Bläddra i källkod

Merge branch 'master' of orgmode.org:org-mode

Carsten Dominik 11 år sedan
förälder
incheckning
2dc1f8d19e
4 ändrade filer med 92 tillägg och 28 borttagningar
  1. 37 12
      contrib/lisp/ox-koma-letter.el
  2. 50 9
      lisp/org-entities.el
  3. 4 6
      lisp/org.el
  4. 1 1
      lisp/ox-latex.el

+ 37 - 12
contrib/lisp/ox-koma-letter.el

@@ -232,7 +232,7 @@ English manual of 2012-07-22)."
 
 
 
-(defcustom org-koma-letter-use-backaddress t
+(defcustom org-koma-letter-use-backaddress nil
   "Print return address in small line above to address."
   :group 'org-export-koma-letter
   :type 'boolean)
@@ -247,12 +247,12 @@ Use `foldmarks:true' to activate default fold marks or
   :group 'org-export-koma-letter
   :type 'string)
 
-(defcustom org-koma-letter-use-phone t
+(defcustom org-koma-letter-use-phone nil
   "Print sender's phone number."
   :group 'org-export-koma-letter
   :type 'boolean)
 
-(defcustom org-koma-letter-use-email t
+(defcustom org-koma-letter-use-email nil
   "Print sender's email address."
   :group 'org-export-koma-letter
   :type 'boolean)
@@ -299,9 +299,11 @@ A headline is only used if #+OPENING is not set.  See also
 					org-koma-letter-default-class
 					org-latex-default-class) t)
     (:author "AUTHOR" nil (org-koma-letter--get-value org-koma-letter-author) t)
+    (:author-changed-in-buffer-p "AUTHOR" nil nil t)
     (:from-address "FROM_ADDRESS" nil nil newline)
     (:phone-number "PHONE_NUMBER" nil org-koma-letter-phone-number)
     (:email "EMAIL" nil (org-koma-letter--get-value org-koma-letter-email) t)
+    (:email-changed-in-buffer-p "EMAIL" nil nil t)
     (:to-address "TO_ADDRESS" nil nil newline)
     (:place "PLACE" nil org-koma-letter-place)
     (:opening "OPENING" nil org-koma-letter-opening)
@@ -318,9 +320,13 @@ A headline is only used if #+OPENING is not set.  See also
     (:with-after-letter nil "after-letter-order"
 			org-koma-letter-special-tags-after-letter)
     (:with-backaddress nil "backaddress" org-koma-letter-use-backaddress)
+    (:with-backaddress-changed-in-buffer-p nil "backaddress" nil)
     (:with-foldmarks nil "foldmarks" org-koma-letter-use-foldmarks)
+    (:with-foldmarks-changed-in-buffer-p nil "foldmarks" "foldmarks-not-set")
     (:with-phone nil "phone" org-koma-letter-use-phone)
+    (:with-phone-changed-in-buffer-p nil "phone" nil)
     (:with-email nil "email" org-koma-letter-use-email)
+    (:with-email-changed-in-buffer-p nil "email" nil)
     (:with-place nil "place" org-koma-letter-use-place)
     (:with-subject nil "subject" org-koma-letter-subject-format))
   :translate-alist '((export-block . org-koma-letter-export-block)
@@ -540,11 +546,19 @@ holding export options."
 	info)))
    (let ((lco (plist-get info :lco))
 	 (author (plist-get info :author))
+	 (author-set (plist-get info :author-changed-in-buffer-p))
 	 (from-address (org-koma-letter--determine-to-and-from info 'from))
 	 (phone-number (plist-get info :phone-number))
 	 (email (plist-get info :email))
+	 (email-set (plist-get info :email-changed-in-buffer-p))
 	 (signature (plist-get info :signature)))
      (concat
+      ;; author or email not set in file: may be overridden by lco
+      (unless author-set
+	(when author (format "\\setkomavar{fromname}{%s}\n"
+			     (org-export-data author info))))
+      (unless email-set
+	(when email (format "\\setkomavar{fromemail}{%s}\n" email)))
       ;; Letter Class Option File
       (when lco
 	(let ((lco-files (split-string lco " "))
@@ -553,11 +567,12 @@ holding export options."
 	    (setq lco-def (format "%s\\LoadLetterOption{%s}\n" lco-def lco-file)))
 	  lco-def))
       ;; Define "From" data.
-      (when author (format "\\setkomavar{fromname}{%s}\n"
-			   (org-export-data author info)))
+      (when (and author author-set) (format "\\setkomavar{fromname}{%s}\n"
+					    (org-export-data author info)))
       (when from-address (format "\\setkomavar{fromaddress}{%s}\n" from-address))
-      (when phone-number (format "\\setkomavar{fromphone}{%s}\n" phone-number))
-      (when email (format "\\setkomavar{fromemail}{%s}\n" email))
+      (when phone-number
+	(format "\\setkomavar{fromphone}{%s}\n" phone-number))
+      (when (and email email-set) (format "\\setkomavar{fromemail}{%s}\n" email))
       (when signature (format "\\setkomavar{signature}{%s}\n" signature))))
    ;; Date.
    (format "\\date{%s}\n" (org-export-data (org-export-get-date info) info))
@@ -568,14 +583,24 @@ holding export options."
        (format "\\setkomavar{place}{%s}\n" (if with-place place ""))))
    ;; KOMA options
    (let ((with-backaddress (plist-get info :with-backaddress))
+	 (with-backaddress-set (plist-get info :with-backaddress-changed-in-buffer-p))
 	 (with-foldmarks (plist-get info :with-foldmarks))
+	 (with-foldmarks-set 
+	  (not (string-equal (plist-get info :with-foldmarks-changed-in-buffer-p)
+			     "foldmarks-not-set")))
 	 (with-phone (plist-get info :with-phone))
-	 (with-email (plist-get info :with-email)))
+	 (with-phone-set (plist-get info :with-phone-changed-in-buffer-p))
+	 (with-email (plist-get info :with-email))
+	 (with-email-set (plist-get info :with-email-changed-in-buffer-p)))
      (concat
-      (format "\\KOMAoption{backaddress}{%s}\n" (if with-backaddress "true" "false"))
-      (format "\\KOMAoption{foldmarks}{%s}\n" (if with-foldmarks with-foldmarks "false"))
-      (format "\\KOMAoption{fromphone}{%s}\n" (if with-phone "true" "false"))
-      (format "\\KOMAoption{fromemail}{%s}\n" (if with-email "true" "false"))))
+      (when with-backaddress-set
+	(format "\\KOMAoption{backaddress}{%s}\n" (if with-backaddress "true" "false")))
+      (when with-foldmarks-set
+	(format "\\KOMAoption{foldmarks}{%s}\n" (if with-foldmarks with-foldmarks "false")))
+      (when with-phone-set
+	(format "\\KOMAoption{fromphone}{%s}\n" (if with-phone "true" "false")))
+      (when with-email-set
+	(format "\\KOMAoption{fromemail}{%s}\n" (if with-email "true" "false")))))
    ;; Document start
    "\\begin{document}\n\n"
    ;; Subject

+ 50 - 9
lisp/org-entities.el

@@ -154,6 +154,9 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("real" "\\Re" t "ℜ" "R" "R" "ℜ")
     ("image" "\\Im" t "ℑ" "I" "I" "ℑ")
     ("weierp" "\\wp" t "℘" "P" "P" "℘")
+    ("ell" "\\ell" t "ℓ" "ell" "ell" "ℓ")
+    ("imath" "\\imath" t "ı" "[dotless i]" "dotless i" "ı")
+    ("jmath" "\\jmath" t "ȷ" "[dotless j]" "dotless j" "ȷ")
 
     "** Greek"
     ("Alpha" "A" nil "Α" "Alpha" "Alpha" "Α")
@@ -203,6 +206,7 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("upsilon" "\\upsilon" t "υ" "upsilon" "upsilon" "υ")
     ("Phi" "\\Phi" t "Φ" "Phi" "Phi" "Φ")
     ("phi" "\\phi" t "φ" "phi" "phi" "φ")
+    ("varphi" "\\varphi" t "ϕ" "varphi" "varphi" "ɸ")
     ("Chi" "X" nil "Χ" "Chi" "Chi" "Χ")
     ("chi" "\\chi" t "χ" "chi" "chi" "χ")
     ("acutex" "\\acute x" t "´x" "'x" "'x" "𝑥́")
@@ -212,10 +216,15 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("Omega" "\\Omega" t "Ω" "Omega" "Omega" "Ω")
     ("omega" "\\omega" t "ω" "omega" "omega" "ω")
     ("piv" "\\varpi" t "ϖ" "omega-pi" "omega-pi" "ϖ")
+    ("varpi" "\\varpi" t "ϖ" "omega-pi" "omega-pi" "ϖ")
     ("partial" "\\partial" t "∂" "[partial differential]" "[partial differential]" "∂")
 
     "** Hebrew"
     ("alefsym" "\\aleph" t "ℵ" "aleph" "aleph" "ℵ")
+    ("aleph" "\\aleph" t "ℵ" "aleph" "aleph" "ℵ")
+    ("gimel" "\\gimel" t "ℷ" "gimel" "gimel" "ℷ")
+    ("beth" "\\beth" t "ℶ" "beth" "beth" "ב")
+    ("dalet" "\\daleth" t "ℸ" "dalet" "dalet" "ד")
 
     "** Dead languages"
     ("ETH" "\\DH{}" nil "Ð" "D" "Ð" "Ð")
@@ -226,6 +235,7 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     "* Punctuation"
     "** Dots and Marks"
     ("dots" "\\dots{}" nil "…" "..." "..." "…")
+    ("cdots" "\\cdots{}" t "⋯" "..." "..." "⋯")
     ("hellip" "\\dots{}" nil "…" "..." "..." "…")
     ("middot" "\\textperiodcentered{}" nil "·" "." "·" "·")
     ("iexcl" "!`" nil "¡" "!" "¡" "¡")
@@ -253,20 +263,23 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     "* Other"
     "** Misc. (often used)"
     ("circ" "\\^{}" nil "ˆ" "^" "^" "ˆ")
-    ("vert" "\\vert{}" t "|" "|" "|" "|")
+    ("vert" "\\vert{}" t "|" "|" "|" "|")
     ("brvbar" "\\textbrokenbar{}" nil "¦" "|" "¦" "¦")
+    ("S" "\\S" nil "§" "paragraph" "§" "§")
     ("sect" "\\S" nil "§" "paragraph" "§" "§")
     ("amp" "\\&" nil "&" "&" "&" "&")
     ("lt" "\\textless{}" nil "&lt;" "<" "<" "<")
     ("gt" "\\textgreater{}" nil "&gt;" ">" ">" ">")
-    ("tilde" "\\~{}" nil "&tilde;" "~" "~" "~")
+    ("tilde" "\\textasciitilde{}" nil "~" "~" "~" "~")
     ("slash" "/" nil "/" "/" "/" "/")
     ("plus" "+" nil "+" "+" "+" "+")
     ("under" "\\_" nil "_" "_" "_" "_")
     ("equal" "=" nil "=" "=" "=" "=")
     ("asciicirc" "\\textasciicircum{}" nil "^" "^" "^" "^")
     ("dagger" "\\textdagger{}" nil "&dagger;" "[dagger]" "[dagger]" "†")
+    ("dag" "\\dag{}" nil "&dagger;" "[dagger]" "[dagger]" "†")
     ("Dagger" "\\textdaggerdbl{}" nil "&Dagger;" "[doubledagger]" "[doubledagger]" "‡")
+    ("ddag" "\\ddag{}" nil "&Dagger;" "[doubledagger]" "[doubledagger]" "‡")
 
     "** Whitespace"
     ("nbsp" "~" nil "&nbsp;" " " " " " ")
@@ -297,6 +310,7 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("plusmn" "\\textpm{}" nil "&plusmn;" "+-" "±" "±")
     ("times" "\\texttimes{}" nil "&times;" "*" "×" "×")
     ("frasl" "/" nil "&frasl;" "/" "/" "⁄")
+    ("colon" "\\colon" t ":" ":" ":" ":")
     ("div" "\\textdiv{}" nil "&divide;" "/" "÷" "÷")
     ("frac12" "\\textonehalf{}" nil "&frac12;" "1/2" "½" "½")
     ("frac14" "\\textonequarter{}" nil "&frac14;" "1/4" "¼" "¼")
@@ -326,7 +340,9 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("cap" "\\cap" t "&cap;" "[intersection]" "[intersection]" "∩")
     ("cup" "\\cup" t "&cup;" "[union]" "[union]" "∪")
     ("int" "\\int" t "&int;" "[integral]" "[integral]" "∫")
+    ("therefore" "\\therefore" t "&there4;" "[therefore]" "[therefore]" "∴")
     ("there4" "\\therefore" t "&there4;" "[therefore]" "[therefore]" "∴")
+    ("because" "\\because" t "&because;" "[because]" "[because]" "∵")
     ("sim" "\\sim" t "&sim;" "~" "~" "∼")
     ("cong" "\\cong" t "&cong;" "[approx. equal to]" "[approx. equal to]" "≅")
     ("simeq" "\\simeq" t "&cong;"  "[approx. equal to]" "[approx. equal to]" "≅")
@@ -335,8 +351,26 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("ne" "\\ne" t "&ne;" "[not equal to]" "[not equal to]" "≠")
     ("neq" "\\neq" t "&ne;" "[not equal to]" "[not equal to]" "≠")
     ("equiv" "\\equiv" t "&equiv;" "[identical to]" "[identical to]" "≡")
+
+    ("triangleq" "\\triangleq" t "&triangleq;" "[defined to]" "[defined to]" "≜")
     ("le" "\\le" t "&le;" "<=" "<=" "≤")
+    ("leq" "\\le" t "&le;" "<=" "<=" "≤")
     ("ge" "\\ge" t "&ge;" ">=" ">=" "≥")
+    ("geq" "\\ge" t "&ge;" ">=" ">=" "≥")
+    ("lessgtr" "\\lessgtr" t "&lessgtr;" "[less than or greater than]" "[less than or greater than]" "≶")
+    ("lesseqgtr" "\\lesseqgtr" t "&lesseqgtr;" "[less than or equal or greater than or equal]" "[less than or equal or greater than or equal]" "⋚")
+    ("ll" "\\ll" t  "&Lt;" "<<" "<<" "≪")
+    ("Ll" "\lll" t "&Ll;" "<<<" "<<<" "⋘")
+    ("lll" "\lll" t "&Ll;" "<<<" "<<<" "⋘")
+    ("gg" "\\gg" t  "&Gt;" ">>" ">>" "≫")
+    ("Gg" "\\ggg" t "&Gg;" ">>>" ">>>" "⋙")
+    ("ggg" "\\ggg" t "&Gg;" ">>>" ">>>" "⋙")
+    ("prec" "\\prec" t "&pr;" "[precedes]" "[precedes]" "≺")
+    ("preceq" "\\preceq" t "&prcue;" "[precedes or equal]" "[precedes or equal]" "≼")
+    ("preccurlyeq" "\\preccurlyeq" t "&prcue;" "[precedes or equal]" "[precedes or equal]" "≼")
+    ("succ" "\\succ" t "&sc;" "[succeeds]" "[succeeds]" "≻")
+    ("succeq" "\\succeq" t "&sccue;" "[succeeds or equal]" "[succeeds or equal]" "≽")
+    ("succcurlyeq" "\\succcurlyeq" t "&sccue;" "[succeeds or equal]" "[succeeds or equal]" "≽")
     ("sub" "\\subset" t "&sub;" "[subset of]" "[subset of]" "⊂")
     ("subset" "\\subset" t "&sub;" "[subset of]" "[subset of]" "⊂")
     ("sup" "\\supset" t "&sup;" "[superset of]" "[superset of]" "⊃")
@@ -345,9 +379,12 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("sube" "\\subseteq" t "&sube;" "[subset of or equal to]" "[subset of or equal to]" "⊆")
     ("nsup" "\\not\\supset" t "&nsup;" "[not a superset of]" "[not a superset of]" "⊅")
     ("supe" "\\supseteq" t "&supe;" "[superset of or equal to]" "[superset of or equal to]" "⊇")
+    ("setminus" "\\setminus" t "&setminus;" "\" "\" "⧵")
     ("forall" "\\forall" t "&forall;" "[for all]" "[for all]" "∀")
     ("exist" "\\exists" t "&exist;" "[there exists]" "[there exists]" "∃")
     ("exists" "\\exists" t "&exist;" "[there exists]" "[there exists]" "∃")
+    ("nexist" "\\nexists" t "&exist;" "[there does not exists]" "[there does not  exists]" "∄")
+    ("nexists" "\\nexists" t "&exist;" "[there does not exists]" "[there does not  exists]" "∄")
     ("empty" "\\empty" t "&empty;" "[empty set]" "[empty set]" "∅")
     ("emptyset" "\\emptyset" t "&empty;" "[empty set]" "[empty set]" "∅")
     ("isin" "\\in" t "&isin;" "[element of]" "[element of]" "∈")
@@ -366,7 +403,8 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("rfloor" "\\rfloor" t "&rfloor;" "[right floor]" "[right floor]" "⌋")
     ("lang" "\\langle" t "&lang;" "<" "<" "⟨")
     ("rang" "\\rangle" t "&rang;" ">" ">" "⟩")
-    ("hbar" "\\hbar" t "&#8463;" "hbar" "hbar" "ℏ")
+    ("hbar" "\\hbar" t "&hbar;" "hbar" "hbar" "ℏ")
+    ("mho" "\\mho" t "&mho;" "mho" "mho" "℧")
 
     "** Arrows"
     ("larr" "\\leftarrow" t "&larr;" "<-" "<-" "←")
@@ -437,7 +475,8 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("odot" "\\odot" t "o" "[circled dot]" "[circled dot]" "ʘ")
     ("oplus" "\\oplus" t "&oplus;" "[circled plus]" "[circled plus]" "⊕")
     ("otimes" "\\otimes" t "&otimes;" "[circled times]" "[circled times]" "⊗")
-    ("checkmark" "\\checkmark" t "&#10003;" "[checkmark]" "[checkmark]" "✓")
+    ("check" "\\checkmark" t "&checkmark;" "[checkmark]" "[checkmark]" "✓")
+    ("checkmark" "\\checkmark" t "&check;" "[checkmark]" "[checkmark]" "✓")
 
     "** Miscellaneous (seldom used)"
     ("para" "\\P{}" nil "&para;" "[pilcrow]" "¶" "¶")
@@ -452,7 +491,8 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("rlm" "" nil "&rlm;" "" "" "‏")
 
     "** Smilies"
-    ("smile" "\\smile" t "&#9786;" ":-)" ":-)" "⌣")
+    ("smile" "\\smile" t "&smile;" ":-)" ":-)" "⌣")
+    ("frown" "\\frown" t "&frown;" ":-(" ":-(" "⌢")
     ("smiley" "\\smiley{}" nil "&#9786;" ":-)" ":-)" "☺")
     ("blacksmile" "\\blacksmiley{}" nil "&#9787;" ":-)" ":-)" "☻")
     ("sad" "\\frownie{}" nil "&#9785;" ":-(" ":-(" "☹")
@@ -464,10 +504,11 @@ packages to be loaded, add these packages to `org-latex-packages-alist'."
     ("spadesuit" "\\spadesuit" t "&spades;" "[spades]" "[spades]" "♠")
     ("hearts" "\\heartsuit" t "&hearts;" "[hearts]" "[hearts]" "♥")
     ("heartsuit" "\\heartsuit" t "&heartsuit;" "[hearts]" "[hearts]" "♥")
-    ("diams" "\\diamondsuit" t "&diams;" "[diamonds]" "[diamonds]" "♦")
-    ("diamondsuit" "\\diamondsuit" t "&diams;" "[diamonds]" "[diamonds]" "♦")
-    ("Diamond" "\\diamond" t "&diamond;" "[diamond]" "[diamond]" "⋄")
-    ("loz" "\\diamond" t "&loz;" "[lozenge]" "[lozenge]" "◊")
+    ("diams" "\\diamondsuit" t "&diams;" "[diamonds]" "[diamonds]" "◆")
+    ("diamondsuit" "\\diamondsuit" t "&diams;" "[diamonds]" "[diamonds]" "◆")
+    ("diamond" "\\diamondsuit" t "&diamond;" "[diamond]" "[diamond]" "◆")
+    ("Diamond" "\\diamondsuit" t "&diamond;" "[diamond]" "[diamond]" "◆")
+    ("loz" "\\lozenge" t "&loz;" "[lozenge]" "[lozenge]" "⧫")
     )
   "Default entities used in Org-mode to produce special characters.
 For details see `org-entities-user'.")

+ 4 - 6
lisp/org.el

@@ -3831,7 +3831,6 @@ header, or they will be appended."
     (""     "textcomp"  t)
     (""     "marvosym"  t)
     (""     "wasysym"   t)
-    (""     "latexsym"  t)
     (""     "amssymb"   t)
     (""     "amstext"   nil)
     (""     "hyperref"  nil)
@@ -3846,10 +3845,9 @@ Org mode to function properly:
 
 - inputenc, fontenc:  for basic font and character selection
 - amstext: for subscript and superscript
-- textcomp, marvosymb, wasysym, latexsym, amssym: for various
-  symbols used for interpreting the entities in `org-entities'.
-  You can skip some of these packages if you don't use any of the
-  symbols in it.
+- textcomp, marvosymb, wasysym, amssymb: for various symbols used
+  for interpreting the entities in `org-entities'.  You can skip
+  some of these packages if you don't use any of their symbols.
 - ulem: for underline and strike-through
 - graphicx: for including images
 - float, wrapfig: for figure placement
@@ -7659,7 +7657,7 @@ This is important for non-interactive uses of the command."
 	   (t
 	    (goto-char (point-at-eol))
 	    (insert "\n")))
-	  
+
 	  ;; Insert the new heading
 	  (insert stars)
 	  (just-one-space)

+ 1 - 1
lisp/ox-latex.el

@@ -1561,7 +1561,7 @@ contextual information."
 			 (1- count)))))
 	 (checkbox (case (org-element-property :checkbox item)
 		     (on "$\\boxtimes$ ")
-		     (off "$\\Box$ ")
+		     (off "$\\square$ ")
 		     (trans "$\\boxminus$ ")))
 	 (tag (let ((tag (org-element-property :tag item)))
 		;; Check-boxes must belong to the tag.