New org-capture template and export theme.

"Tracking" allows to capture coccurences of event in tables in a
special org file.
The new "taopeng" theme can be used for org HTML exports.
This commit is contained in:
Marcel Fries
2019-08-22 07:54:50 +02:00
parent cf5dca2f2c
commit 198adca63b
2 changed files with 591 additions and 1 deletions

559
org-css/taopeng.css Normal file
View File

@@ -0,0 +1,559 @@
/* Welcome to Compass.
* In this file you should write your main styles. (or centralize your imports)
* Import this file using the following HTML or equivalent:
* <link href="/static/css/notes.css" media="screen, projection" rel="stylesheet" type="text/css" /> */
/* use normalize.css instead of reset
http://stackoverflow.com/a/8357635/114833 */
/* @import "compass/reset"; */
@import "https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i|Source+Code+Pro|Source+Sans+Pro:700,700i";
/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
/*
* What follows is the result of much research on cross-browser styling.
* Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
* Kroc Camen, and the H5BP dev community and team.
*/
/* ==========================================================================
Base styles: opinionated defaults
========================================================================== */
html,
button,
input,
select,
textarea {
color: #484C66;
}
html {
font-size: 90%;
line-height: 1.4;
}
*,
*:before,
*:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
a {
white-space: pre;
white-space: pre-wrap;
white-space: pre-line;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
white-space: -moz-pre-wrap;
white-space: -hp-pre-wrap;
word-wrap: break-word;
text-decoration: none;
}
a:hover {
color: #EA4C89;
}
/*
* Remove text-shadow in selection highlight: h5bp.com/i
* These selection rule sets have to be separate.
* Customize the background color to match your design.
*/
::-moz-selection {
background: #EA4C89;
color: #FFF;
text-shadow: none;
}
::selection {
background: #EA4C89;
color: #FFF;
text-shadow: none;
}
/*
* A better looking default horizontal rule
*/
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px dashed #CCC;
margin: 1em 0;
padding: 0;
}
/*
* Remove the gap between images, videos, audio and canvas and the bottom of
* their containers: h5bp.com/i/440
*/
audio,
canvas,
img,
video {
vertical-align: middle;
}
/*
* Remove default fieldset styles.
*/
fieldset {
border: 0;
margin: 0;
padding: 0;
}
/*
* Allow only vertical resizing of textareas.
*/
textarea {
resize: vertical;
}
/* ==========================================================================
Author's custom styles
========================================================================== */
.todo,
.done,
.tag {
font-family: "Source Pro", Monaco, "Courier New", monospace;
padding: 0 0.3em;
background-color: #EEE;
border: 1px solid #CCC;
}
.todo {
color: #DD4433;
}
.done {
color: #44934B;
}
.tag {
font-size: 80%;
font-weight: normal;
margin: 0 0.3em;
display: none;
}
.timestamp {
color: #BEBEBE;
}
.timestamp-kwd {
color: #5F9EA0;
}
.right {
margin-left: auto;
margin-right: 0px;
text-align: right;
}
.left {
margin-left: 0px;
margin-right: auto;
text-align: left;
}
.center {
margin-left: auto;
margin-right: auto;
text-align: center;
}
.underline {
text-decoration: underline;
}
#postamble p,
#preamble p {
font-size: 90%;
margin: .2em;
}
pre,
code {
font-family: "Source Pro", Monaco, "Courier New", monospace;
padding-left: 0.3em;
padding-right: 0.3em;
}
pre {
font-size: 90%;
padding: 8pt;
overflow: auto;
white-space: pre;
word-wrap: normal;
}
pre.src {
position: relative;
}
pre.src:before {
display: none;
position: absolute;
background-color: #FFF;
top: 0.5em;
right: 0.5em;
padding: 4px;
border: 1px solid #CCC;
}
pre.src-sh:before {
content: "Shell Script";
}
pre.src-bash:before {
content: "Bash Script";
}
pre.src-emacs-lisp:before {
content: "Emacs Lisp";
}
pre.src-R:before {
content: "R";
}
pre.src-perl:before {
content: "Perl";
}
pre.src-java:before {
content: "Java";
}
pre.src-sql:before {
content: "SQL";
}
pre.src-c:before {
content: "C";
}
pre.src-cpp:before {
content: "C++";
}
pre.src-html:before {
content: "HTML";
}
table {
border-collapse: collapse;
display: block;
overflow-x: auto;
}
caption.t-above {
caption-side: top;
}
caption.t-bottom {
caption-side: bottom;
}
td, th {
vertical-align: top;
border: 1px solid #CCC;
padding: 0.5em;
}
th.right {
text-align: center;
}
th.left {
text-align: center;
}
th.center {
text-align: center;
}
td.right {
text-align: right;
}
td.left {
text-align: left;
}
td.center {
text-align: center;
}
dt {
font-weight: bold;
}
#footnotes {
border-top: 5px solid #EA4C89;
margin-bottom: 5em;
}
#footnotes h2 {
display: none;
}
#text-footnotes {
margin-top: 1em;
}
.footpara:nth-child(2) {
display: inline;
}
.footpara {
display: block;
}
.footdef sup:before {
content: "[";
}
.footdef sup:after {
content: "]";
}
.footdef p {
display: inline;
}
figure {
margin: 0;
}
figure img {
max-width: 100%;
}
figcaption {
text-align: center;
font-size: 0.8rem;
}
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up {
text-align: right;
font-size: 70%;
white-space: nowrap;
}
textarea {
overflow-x: auto;
}
.linenr {
font-size: smaller;
}
.code-highlighted {
background-color: #ffff00;
}
.org-info-js_info-navigation {
border-style: none;
}
#org-info-js_console-label {
font-size: 10px;
font-weight: bold;
white-space: nowrap;
}
.org-info-js_search-highlight {
background-color: #ffff00;
color: #000000;
font-weight: bold;
}
p.verse,
blockquote {
margin: 0;
padding: 0;
padding-left: 3%;
border-left: 5px solid #EA4C89;
}
body {
font-family: Lora, Palatino, Georgia, serif;
width: 92%;
max-width: 1024px;
margin: 0 auto;
background-color: #FFF;
}
h2 {
line-height: 1.62em;
}
.title {
margin: 0 0 2em 0;
line-height: 2em;
border-bottom: 5px solid #EA4C89;
text-align: center;
}
#postamble {
font-size: 80%;
line-height: 1.4em;
text-align: right;
}
h1, h2, h3, h4, h5, h6 {
font-family: "Source Sans Pro", sans-serif;
color: #222;
}
.outline-2 {
margin-bottom: 4em;
}
.outline-2 h2 {
border-bottom: 1px solid #CCC;
}
.outline-text-2 code, pre {
background-color: #EEE;
}
#table-of-contents {
display: none;
margin-left: 0.5em;
}
#text-table-of-contents ul {
padding-left: 1.8em;
}
#text-table-of-contents li {
list-style-type: circle;
margin: 0.4em 0;
}
#text-table-of-contents ul ul {
margin: 0;
}
#text-table-of-contents li li {
font-weight: normal;
font-size: 90%;
margin: 0;
}
#content {
overflow: hidden;
*zoom: 1;
}
/* ==========================================================================
EXAMPLE Media Queries for Responsive Design.
These examples override the primary ('mobile first') styles.
Modify as content requires.
========================================================================== */
@media only screen and (min-width: 35em) {
/* Style adjustments for viewports that meet the condition */
}
@media print, (-o-min-device-pixel-ratio: 5 / 4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
/* Style adjustments for high resolution devices */
}
/* ==========================================================================
Print styles.
Inlined to avoid required HTTP connection: h5bp.com/r
========================================================================== */
@media print {
* {
background: transparent !important;
color: #000 !important;
/* Black prints faster: h5bp.com/s */
box-shadow: none !important;
text-shadow: none !important;
}
a,
a:visited {
text-decoration: underline;
}
a[href]:after {
content: " (" attr(href) ")";
}
abbr[title]:after {
content: " (" attr(title) ")";
}
/*
* Don't show links for images, or javascript/internal links
*/
.ir a:after,
a[href^="javascript:"]:after,
a[href^="#"]:after {
content: "";
}
pre,
blockquote {
/* border: 1px solid #999; */
page-break-inside: avoid;
}
thead {
display: table-header-group;
/* h5bp.com/t */
}
tr,
img {
page-break-inside: avoid;
}
img {
max-width: 100% !important;
}
@page {
margin: 0.5cm;
}
p,
h2,
h3 {
orphans: 3;
widows: 3;
}
h2,
h3 {
page-break-after: avoid;
}
#table-of-contents {
display: block;
width: initial;
border: none;
}
#table-of-contents a {
text-decoration: none;
}
}
/* large screen */
@media screen and (min-width: 40rem) {
html {
font-size: 100%;
}
#table-of-contents {
display: block;
padding: 1em;
width: 32%;
min-width: 18em;
float: right;
background-color: #EEE;
position: relative;
/* required by z-index */
z-index: 5000;
border: 1px solid #CCC;
}
.tag {
display: initial;
}
}

View File

@@ -289,6 +289,15 @@ This is my configuration for the emacs editor.
(find-file "~/Notes/todo.org")) (find-file "~/Notes/todo.org"))
#+END_SRC #+END_SRC
*** The Tracking file
I use this file to capture dates, at wich I do certain tasks.
Used mostly for keeping track of habits.
#+BEGIN_SRC emacs-lisp
(defun open-main-todo-file ()
(interactive)
(find-file "~/Notes/tracking.org"))
#+END_SRC
** Configure org-mode ** Configure org-mode
This is the main configuration for the infamous org-mode. This is the main configuration for the infamous org-mode.
The most important parts are configuring key bindings to quickly access the files we have defined above. The most important parts are configuring key bindings to quickly access the files we have defined above.
@@ -458,12 +467,34 @@ This is my configuration for the emacs editor.
(add-to-list 'org-structure-template-alist '("el" "#+BEGIN_SRC emacs-lisp\n?\n#+END_SRC")) (add-to-list 'org-structure-template-alist '("el" "#+BEGIN_SRC emacs-lisp\n?\n#+END_SRC"))
#+END_SRC #+END_SRC
*** Capture Support Functions
First we define a function to look the subheading under which we want to file captures:
#+BEGIN_SRC emacs-lisp
(defun org-get-target-headline (&optional targets prompt)
"Prompt for a location in an org file and jump to it.
This is for promping for refile targets when doing captures.
Targets are selected from `org-refile-targets'. If TARGETS is
given it temporarily overrides `org-refile-targets'. PROMPT will
replace the default prompt message.
If CAPTURE-LOC is is given, capture to that location instead of
prompting."
(let ((org-refile-targets (or targets org-refile-targets))
(prompt (or prompt "Capture Location")))
(org-refile t nil nil prompt))
)
#+END_SRC
*** Org Capture *** Org Capture
Here we define templates we want to use to quickly capture stuff and automatically file them away. Here we define templates we want to use to quickly capture stuff and automatically file them away.
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(setq org-capture-templates (setq org-capture-templates
'(("l" "Link" entry (file "~/Notes/links.org") '(("l" "Link" entry (file "~/Notes/links.org")
"* NEW %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n%i\n"))) "* NEW %?\n:PROPERTIES:\n:CREATED: %U\n:END:\n%i\n")
("t" "Track" table-line (file+function "~/Notes/tracking.org" org-get-target-headline)
"| %? | |")))
#+END_SRC #+END_SRC
* Additional Package Imports * Additional Package Imports