:key-type string
:value-type string))))
+(setq org-emphasis-regexp-components
+ '("- \t('\"{}" ; prematch
+ "- \t.,:!?;'\")}\\[" ; postmatch
+ " \t\r\n" ; /forbidden/ as border
+ "." ; body regexp
+ 1)) ; maximum newlines
+
+(setq org-entities-user
+ ;; NAME LATEX MATHP HTML ASCII LATIN1 UTF8
+ '(("relax" "" nil "" "" "" "")))
+
(eval-after-load "org-latex"
'(setq org-export-latex-classes
(append mdw-org-latex-defs org-export-latex-classes)))
("" "hyperref" nil)
"\\tolerance=1000")))
-
(setq org-export-docbook-xslt-proc-command "xsltproc --output %o %s %i"
org-export-docbook-xsl-fo-proc-command "fop %i.safe %o"
org-export-docbook-xslt-stylesheet
python-indent-offset 2
python-fill-docstring-style 'symmetric)
-(defun mdw-fontify-pythonic (keywords builtins)
+(defun mdw-fontify-pythonic (keywords soft-keywords builtins)
;; Miscellaneous fiddling.
(mdw-standard-fill-prefix "\\([ \t]*#+[ \t]*\\)")
;; Set up the keywords defined above.
(list (concat "\\_<\\(" keywords "\\)\\_>")
'(0 font-lock-keyword-face))
+ (list (concat "\\(^\\|[^.]\\)\\_<\\(" soft-keywords "\\)\\_>")
+ '(2 font-lock-keyword-face))
(list (concat "\\(^\\|[^.]\\)\\_<\\(" builtins "\\)\\_>")
'(2 font-lock-variable-name-face))
(list (concat "\\_<\\(__\\(\\sw+\\|\\s_+\\)+__\\)\\_>")
(defun mdw-fontify-python ()
(mdw-fontify-pythonic
- (mdw-regexps "and" "as" "assert"
+ (mdw-regexps "and" "as" "assert" "async" "await"
"break"
"class" "continue"
"def" "del"
- "elif" "else" "except" "exec"
+ "elif" "else" "except" ;"exec"
"finally" "for" "from"
"global"
"if" "import" "in" "is"
"lambda"
+ "nonlocal"
"not"
"or"
- "pass" "print"
+ "pass" ;"print"
"raise" "return"
- "try"
+ "try" ;"type"
"while" "with"
"yield")
+ (mdw-regexps "case"
+ "match")
+
(mdw-regexps "Ellipsis"
"False"
"None" "NotImplemented"
"__debug__"
"BaseException"
+ "BaseExceptionGroup"
"Exception"
"StandardError"
"ArithmeticError"
"EnvironmentError"
"IOError"
"OSError"
+ "BlockingIOError"
+ "ChildProcessError"
+ "ConnectionError"
+ "BrokenPipeError"
+ "ConnectionAbortedError"
+ "ConnectionRefusedError"
+ "ConnectionResetError"
+ "FileExistsError"
+ "FileNotFoundError"
+ "InterruptedError"
+ "IsADirectoryError"
+ "NotADirectoryError"
+ "PermissionError"
+ "TimeoutError"
"EOFError"
+ "ExceptionGroup"
"ImportError"
+ "ModuleNotFoundError"
"LookupError"
"IndexError"
"KeyError"
"ReferenceError"
"RuntimeError"
"NotImplementedError"
+ "RecursionError"
"SyntaxError"
"IndentationError"
"TabError"
"Warning"
"BytesWarning"
"DeprecationWarning"
+ "EncodingWarning"
"FutureWarning"
"ImportWarning"
"PendingDeprecationWarning"
+ "ResourceWarning"
"RuntimeWarning"
"SyntaxWarning"
"UnicodeWarning"
"KeyboardInterrupt"
"SystemExit"
- "abs" "absolute_import" "all" "any" "apply"
- "basestring" "bin" "bool" "buffer" "bytearray"
+ "abs" "absolute_import" "aiter"
+ "all" "anext" "any" "apply" "ascii"
+ "basestring" "bin" "bool" "breakpoint"
+ "buffer" "bytearray" "bytes"
"callable" "coerce" "chr" "classmethod"
"cmp" "compile" "complex"
"delattr" "dict" "dir" "divmod"
- "enumerate" "eval" "execfile"
+ "enumerate" "eval" "exec" "execfile"
"file" "filter" "float" "format" "frozenset"
"getattr" "globals"
"hasattr" "hash" "help" "hex"
"import" "in" "is" "lambda" "not" "or" "pass" "print"
"property" "raise" "return" "struct" "try" "while" "with"
"yield")
+ ""
""))
(define-derived-mode pyrex-mode python-mode "Pyrex"