Mercurial Commits

 

rework private elisp file

- rename ivan-var-portable to ivan-var-keep - move loading of private file in ivan-start.el - remove ivan-fun-portable-dir-hook which is not used anymore - remove couple of emms functions - rename function in ivan.el so they start with ivan- - turn off windmove as I never use it

File modified: bin/bgn.sh bin/emacs.sh lisp/emacs.d/init.el lisp/emacs.d/ivan-bbdb.el lisp/emacs.d/ivan-emms.el lisp/emacs.d/ivan-erc.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-keymap.el lisp/emacs.d/ivan-lookup.el lisp/emacs.d/ivan-org.el lisp/emacs.d/ivan-start.el lisp/emacs.d/ivan-var.el lisp/emacs.d/ivan-w3m.el

Change374 at Thu Sep 02 12:26:50 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r b7eabf33e3d8 -r 9e196aac98e8 lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Tue Aug 31 17:44:47 2010 +0200
+++ b/lisp/emacs.d/ivan-w3m.el	Thu Sep 02 12:26:50 2010 +0200
@@ -107,7 +107,7 @@
 
 (if (eq init-user 'ivan)
     (setq w3m-profile-directory
-          (concat ivan-var-portable-dir ".emacs-w3m")))
+          (concat ivan-var-keep-dir ".emacs-w3m")))
 
 (ivan-face
  w3m-arrived-anchor purple


 

merge

File modified:

Change373 at Tue Aug 31 17:44:47 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 4d07df40ebdd -r b7eabf33e3d8 lisp/emacs.d/ivan-abbrev.el
--- a/lisp/emacs.d/ivan-abbrev.el	Tue Aug 31 17:44:22 2010 +0200
+++ b/lisp/emacs.d/ivan-abbrev.el	Tue Aug 31 17:44:47 2010 +0200
@@ -12,6 +12,8 @@
 
 (define-abbrev-table 'text-mode-abbrev-table
   '(("bc" "Bien cordialement,")
+    ("stp" "s'il te plaît")
+    ("svp" "s'il vous plaît")
     ("vmr" (concat "Veuillez agréer, Monsieur, "
                    "l'expression de mes salutations distinguées."))
     ("vmm" (concat "Veuillez agréer, Madame, Monsieur, "


 

go through all directory in media looking for private.el

rename ivan-var-user to init-user

File modified: lisp/emacs.d/init.el lisp/emacs.d/ivan-bbdb.el lisp/emacs.d/ivan-english.el lisp/emacs.d/ivan-erc.el lisp/emacs.d/ivan-font.el lisp/emacs.d/ivan-french.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-gnus.el lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-message.el lisp/emacs.d/ivan-var.el lisp/emacs.d/ivan-w3m.el

Change372 at Tue Aug 31 17:44:22 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 42c25938510b -r 4d07df40ebdd lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Tue Aug 31 07:34:18 2010 +0200
+++ b/lisp/emacs.d/ivan-w3m.el	Tue Aug 31 17:44:22 2010 +0200
@@ -1,6 +1,7 @@
 ;;; ivan-w3m.el --- browsing the web with external process
 
 (eval-when-compile
+  (defvar init-user "")
   (require 'ivan-face)
   (require 'ivan-fun)
   (require 'ivan-keymap)
@@ -104,7 +105,7 @@
  '(("google" "http://www.google.com/search?q=%s&num=100")
    ("google-map" "http://maps.google.com/maps?&q=%s")))
 
-(if (eq ivan-var-user 'ivan)
+(if (eq init-user 'ivan)
     (setq w3m-profile-directory
           (concat ivan-var-portable-dir ".emacs-w3m")))
 


 

add french abbrev svp and stp

File modified: lisp/emacs.d/ivan-abbrev.el

Change371 at Tue Aug 31 09:43:53 2010 +0200 by bob

diff -r 7dfad119a309 -r a1a1b46ab0fa lisp/emacs.d/ivan-abbrev.el
--- a/lisp/emacs.d/ivan-abbrev.el	Mon Aug 30 22:10:50 2010 +0200
+++ b/lisp/emacs.d/ivan-abbrev.el	Tue Aug 31 09:43:53 2010 +0200
@@ -12,6 +12,8 @@
 
 (define-abbrev-table 'text-mode-abbrev-table
   '(("bc" "Bien cordialement,")
+    ("stp" "s'il te plaît")
+    ("svp" "s'il vous plaît")
     ("vmr" (concat "Veuillez agréer, Monsieur, "
                    "l'expression de mes salutations distinguées."))
     ("vmm" (concat "Veuillez agréer, Madame, Monsieur, "


 

add caps mode

File modified: lisp/misc/Makefile lisp/misc/caps-mode.el

Change370 at Tue Aug 31 07:34:18 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 12378d88df05 -r 42c25938510b lisp/misc/caps-mode.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/misc/caps-mode.el	Tue Aug 31 07:34:18 2010 +0200
@@ -0,0 +1,65 @@
+;;; caps-mode.el -- (minor mode) letters are inserted capitalized
+
+;; Copyright (C) 2004 Joe Corneli <jcorneli <at> math.utexas.edu>,
+;; Christoph Conrad <nospam <at> spamgourmet.com>, Kevin Rodgers
+;; <ihs_4664 <at> yahoo.com>, Kim F. Storm <no-spam <at> cua.dk>
+
+;; Time-stamp: <jac -- Sat Aug  7 13:05:16 CDT 2004>
+
+;; This file is not part of GNU Emacs, but it is distributed under
+;; the same terms as GNU Emacs.
+
+;; GNU Emacs is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published
+;; by the Free Software Foundation; either version 2, or (at your
+;; option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;;; Commentary:          
+
+;; This is a simple minor mode in which all letters are inserted in
+;; captialized form.  I haven't bothered with letters outside of
+;; ASCII.
+
+;; Note that this mode has absolutely nothing to do with the toggle
+;; state of your capslock.
+
+;;; Code:
+
...
 

bullet proof stopping gnus and emms when exiting emacs

File modified: lisp/emacs.d/ivan-fun.el

Change369 at Tue Aug 31 07:33:38 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 7dfad119a309 -r 12378d88df05 lisp/emacs.d/ivan-fun.el
--- a/lisp/emacs.d/ivan-fun.el	Mon Aug 30 22:10:50 2010 +0200
+++ b/lisp/emacs.d/ivan-fun.el	Tue Aug 31 07:33:38 2010 +0200
@@ -100,13 +100,15 @@
 (defun ivan-fun-kill-emacs (&optional arg)
   "Quit emacs, kill all processes silently, close gnus"
   (interactive "P")
-  (emms-stop)
+  (if (fboundp 'emms-stop)
+      (emms-stop))
+  (if (fboundp 'gnus-group-exit)
+      (gnus-group-exit))
   (and (fboundp 'process-list)
        (let ((processes (process-list)))
          (while processes
            (delete-process (car processes))
            (setq processes (cdr processes)))))
-  (gnus-group-exit)
   (save-buffers-kill-emacs))
 
 (defun ivan-fun-make-frame ()


 

fix compilation warnings

File modified: lisp/emacs.d/init.el lisp/emacs.d/ivan-c.el lisp/emacs.d/ivan-japanese.el lisp/emacs.d/ivan-lisp.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-muse.el lisp/emacs.d/ivan-org.el lisp/emacs.d/ivan-wgrep.el

Change368 at Mon Aug 30 22:10:50 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 16566bcba881 -r 7dfad119a309 lisp/emacs.d/ivan-wgrep.el
--- a/lisp/emacs.d/ivan-wgrep.el	Mon Aug 30 22:10:38 2010 +0200
+++ b/lisp/emacs.d/ivan-wgrep.el	Mon Aug 30 22:10:50 2010 +0200
@@ -10,6 +10,10 @@
 
 ;;; Code:
 
+(eval-when-compile
+  (require 'ivan-face)
+  (require 'wgrep))
+
 (ivan-face
  wgrep-face r-darkseagreen2
  wgrep-file-face normal


 

quit emms and gnus when exiting emacs

remove real player stuf

File modified: lisp/emacs.d/ivan-fun.el

Change367 at Mon Aug 30 22:10:38 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 8292298aaea5 -r 16566bcba881 lisp/emacs.d/ivan-fun.el
--- a/lisp/emacs.d/ivan-fun.el	Sun Aug 29 18:36:44 2010 +0200
+++ b/lisp/emacs.d/ivan-fun.el	Mon Aug 30 22:10:38 2010 +0200
@@ -3,17 +3,17 @@
 (require 'ivan-keymap)
 
 (eval-when-compile
+  (require 'ivan-load)
+  (require 'ivan-var)
+  (require 'browse-url)
   (require 'comint)
-  (require 'browse-url)
-  (require 'ivan-var)
+  (require 'emms)
+  (require 'dframe)
+  (require 'gnus-group)
+  (require 'ispell)
   (require 'make-mode)
-  (require 'dframe)
-  (require 'emms)
+  (require 'remember)
   (require 'time-stamp)
-  (require 'ispell)
-  (require 'ivan-load)
-  (require 'remember)
-  (require 'realplay)
   ;; pacify compiler
   (defun x-send-client-message(a b c d e f))
   (defun w32-shell-execute (a b c d))
@@ -98,13 +98,15 @@
          (browse-url-firefox url))))
 
 (defun ivan-fun-kill-emacs (&optional arg)
-  "Quit emacs, kill all processes silently"
+  "Quit emacs, kill all processes silently, close gnus"
   (interactive "P")
+  (emms-stop)
   (and (fboundp 'process-list)
        (let ((processes (process-list)))
          (while processes
            (delete-process (car processes))
...
 

add caps mode to shell and c mode, bind to M-j c

File modified: lisp/emacs.d/ivan-c.el lisp/emacs.d/ivan-shell.el

Change366 at Sun Aug 29 18:36:44 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 9997703c7cad -r 8292298aaea5 lisp/emacs.d/ivan-shell.el
--- a/lisp/emacs.d/ivan-shell.el	Sun Aug 29 18:31:56 2010 +0200
+++ b/lisp/emacs.d/ivan-shell.el	Sun Aug 29 18:36:44 2010 +0200
@@ -1,12 +1,16 @@
 ;;; ivan-shell.el --- shell script
 
+(require 'caps-mode)
 (require 'ivan-face)
 (require 'ivan-common-code)
+
 (eval-when-compile
   (require 'sh-script))
 
 (defun ivan-sh-hook ()
-  (ivan-common-code-key-binding sh-mode-map))
+  (ivan-common-code-key-binding sh-mode-map)
+  (ivan-keymap-define sh-mode-map
+                      "M-j c" caps-mode))
 
 (add-hook 'sh-mode-hook 'ivan-sh-hook)
 
@@ -15,7 +19,6 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

fixed several bugs in erc furigana

File modified: lisp/emacs.d/ivan-erc.el lisp/emacs.d/ivan-japanese.el

Change365 at Sun Aug 29 18:31:56 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 436c86fce945 -r 9997703c7cad lisp/emacs.d/ivan-japanese.el
--- a/lisp/emacs.d/ivan-japanese.el	Sat Aug 28 19:22:41 2010 +0200
+++ b/lisp/emacs.d/ivan-japanese.el	Sun Aug 29 18:31:56 2010 +0200
@@ -14,24 +14,28 @@
   (defvar quail-japanese-transliteration-rules)
   (defvar quail-japanese-use-double-n))
 
+(defvar ivan-japanese-kakasi-buffer "*kakasi*"
+  "Define temporary buffer for kakasi conversion")
+
 (defun ivan-japanese-input ()
   (interactive)
   (activate-input-method 'japanese))
 
 (defun ivan-japanese-kakasi (input)
   "Take a Japanese string and return INPUT in hiragana"
-  (get-buffer-create kakasi-buffer)
+  (get-buffer-create ivan-japanese-kakasi-buffer)
   (with-temp-buffer
     (insert input)
     (let ((coding-system-for-read 'euc-jp)
           (coding-system-for-write 'euc-jp))
-      (call-process-region (point-min) (point-max)
-                           "kakasi" nil kakasi-buffer nil "-JH" "-s")))
+      (call-process-region
+       (point-min) (point-max)
+       "kakasi" nil ivan-japanese-kakasi-buffer nil "-JH" "-s")))
   (prog1
-      (with-current-buffer kakasi-buffer
+      (with-current-buffer ivan-japanese-kakasi-buffer
         (setq kakasi-ret
               (buffer-substring-no-properties (point-min) (point-max))))
-    (kill-buffer kakasi-buffer)))
+    (kill-buffer ivan-japanese-kakasi-buffer)))
 
 (defun ivan-japanese-kanji (string)
   "Return t if string contains Japanese kanji"


 

add furigana mode with ERC

File modified: lisp/emacs.d/ivan-erc.el lisp/emacs.d/ivan-japanese.el

Change364 at Sat Aug 28 19:22:41 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 1ddd54c5b268 -r 436c86fce945 lisp/emacs.d/ivan-japanese.el
--- a/lisp/emacs.d/ivan-japanese.el	Fri Aug 27 07:58:37 2010 +0200
+++ b/lisp/emacs.d/ivan-japanese.el	Sat Aug 28 19:22:41 2010 +0200
@@ -18,6 +18,35 @@
   (interactive)
   (activate-input-method 'japanese))
 
+(defun ivan-japanese-kakasi (input)
+  "Take a Japanese string and return INPUT in hiragana"
+  (get-buffer-create kakasi-buffer)
+  (with-temp-buffer
+    (insert input)
+    (let ((coding-system-for-read 'euc-jp)
+          (coding-system-for-write 'euc-jp))
+      (call-process-region (point-min) (point-max)
+                           "kakasi" nil kakasi-buffer nil "-JH" "-s")))
+  (prog1
+      (with-current-buffer kakasi-buffer
+        (setq kakasi-ret
+              (buffer-substring-no-properties (point-min) (point-max))))
+    (kill-buffer kakasi-buffer)))
+
+(defun ivan-japanese-kanji (string)
+  "Return t if string contains Japanese kanji"
+  (let ((length (length string))
+        (count 0)
+        (ret nil)
+        (char ?a))
+    (while (< count length)
+      (setq char (aref string count))
+      (if (and (< char ?\u9fa5)
+               (> char ?\u4e00))
+          (setq ret t))
+      (setq count (1+ count)))
+    ret))
+
 (setq quail-japanese-transliteration-rules
       '(( "a" "あ") ( "i" "い") ( "u" "う") ( "e" "え") ( "o" "お")
         ("ka" "か") ("ki" "き") ("ku" "く") ("ke" "け") ("ko" "こ")
@@ -147,7 +176,7 @@
 
...
 

org force dependencies for todo and checkboxes

File modified: lisp/emacs.d/ivan-org.el

Change363 at Fri Aug 27 07:58:37 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 8b8f56fbff8d -r 1ddd54c5b268 lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Thu Aug 26 12:20:58 2010 +0200
+++ b/lisp/emacs.d/ivan-org.el	Fri Aug 27 07:58:37 2010 +0200
@@ -170,6 +170,8 @@
  org-agenda-ndays 2
  org-default-notes-file ivan-org-todo
  org-directory ivan-var-portable-dir
+ org-enforce-todo-checkbox-dependencies t
+ org-enforce-todo-dependencies t
  org-hide-leading-stars t
  org-highlight-sparse-tree-matches nil
  org-log-done t


 

open agenda when starting emacs

File modified: lisp/emacs.d/init.el lisp/emacs.d/ivan-org.el

Change362 at Thu Aug 26 12:20:58 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 03e69124d954 -r 8b8f56fbff8d lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Thu Aug 26 12:20:47 2010 +0200
+++ b/lisp/emacs.d/ivan-org.el	Thu Aug 26 12:20:58 2010 +0200
@@ -44,7 +44,7 @@
 (defun ivan-org-agenda ()
   (interactive)
   (run-hooks 'ivan-fun-portable-dir-hook)
-  (if (ivan-fun-start-or-switch 'org-agenda "*Org Agenda*" 1)
+  (if (ivan-fun-start-or-switch 'org-agenda-list "*Org Agenda*" 1)
       (progn
         (org-agenda-to-appt)
         (appt-activate))))
@@ -125,7 +125,7 @@
                       "M-k s" org-schedule
                       "C-c C-s" nil
                       "C-c C-p" ivan-org-publish)
-  
+
   (define-key org-mode-map "\C-j" ivan-org-ctrl-j-map))
 
 (add-hook 'org-mode-hook 'ivan-org-hook)
@@ -216,7 +216,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

.wad is a binary file in muse

File modified: lisp/emacs.d/ivan-muse.el

Change361 at Thu Aug 26 12:20:47 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 28990d568b2e -r 03e69124d954 lisp/emacs.d/ivan-muse.el
--- a/lisp/emacs.d/ivan-muse.el	Thu Aug 26 12:20:22 2010 +0200
+++ b/lisp/emacs.d/ivan-muse.el	Thu Aug 26 12:20:47 2010 +0200
@@ -59,7 +59,7 @@
  muse-file-regexp
  (concat "\\`[~/]\\|\\?\\|/\\'\\|\\."
          "\\(html?\\|pdf\\|xml\\|el\\|swf\\|zip\\|txt\\|tar\\|"
-         "py\\|pl\\|7z\\|patch\\|exe\\|bin\\)"
+         "py\\|pl\\|7z\\|patch\\|wad\\|exe\\|bin\\)"
          "\\(\\.\\(gz\\|bz2\\)\\)?\\'"))
 
 


 

pressing c edit grep buffer

File modified: lisp/misc/wgrep.el

Change360 at Thu Aug 26 12:20:22 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 9b7f2daef3ea -r 28990d568b2e lisp/misc/wgrep.el
--- a/lisp/misc/wgrep.el	Thu Aug 26 11:41:00 2010 +0200
+++ b/lisp/misc/wgrep.el	Thu Aug 26 12:20:22 2010 +0200
@@ -172,7 +172,7 @@
 (defun wgrep-setup ()
   (if wgrep-enabled
       (progn
-	(define-key grep-mode-map "\C-c\C-p" 'wgrep-to-wgrep-mode)
+	(define-key grep-mode-map "c" 'wgrep-to-wgrep-mode)
 	(if (boundp 'compilation-finish-functions)
 	    (add-hook 'compilation-finish-functions 'wgrep-finish-function nil t)
 	  ;; this works Emacs 22.1 or earlier


 

remove realplay from w3m

File modified: lisp/emacs.d/ivan-w3m.el

Change359 at Thu Aug 26 11:41:00 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 90f280b0de76 -r 9b7f2daef3ea lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Thu Aug 26 10:49:31 2010 +0200
+++ b/lisp/emacs.d/ivan-w3m.el	Thu Aug 26 11:41:00 2010 +0200
@@ -116,14 +116,10 @@
  w3m-form-button-face blue
  w3m-image-anchor blue)
 
-;; Realplay support
-(add-hook 'w3m-load-hook 'realplay-w3m-init)
-
 (provide 'ivan-w3m)
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

add script that generates a elisp tar ball on website

File modified: bin/hg-tar.sh

Change358 at Thu Aug 26 10:49:31 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 02f8a62ac793 -r 90f280b0de76 bin/hg-tar.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/hg-tar.sh	Thu Aug 26 10:49:31 2010 +0200
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+export PATH=${PATH}:${HOME}/local/bin
+hg_stage="${HOME}/hg"
+tar_ball="hg.tar.bz2"
+
+fn_check () {
+    if test "X${?}" != "X0"
+    then
+       printf "${1}.\n"
+       exit 1
+    fi
+}
+
+fn_clean_stage () {
+    if test -d "${hg_stage}"
+    then
+         rm -r "${hg_stage}"
+         fn_check "Failed to remove ${hg_stage}"
+    fi
+}
+
+fn_clean_stage
+
+mkdir "${hg_stage}"
+fn_check "Failed to make dir ${hg_stage}"
+
+cp -r "${HOME}/www/hg/lisp" "${hg_stage}"
+fn_check "Failed to copy ${HOME}/www/hg/lisp to ${hg_stage}"
+
+cd "${hg_stage}/lisp"
+fn_check "Failed to change to directory ${hg_stage}/lisp"
+
+make > hg_tar.log 2>&1
+fn_check "Make failed"
+
+cd "${HOME}"
...
 

add wgrep faces colors

File modified: lisp/emacs.d/Makefile lisp/emacs.d/init.el lisp/emacs.d/ivan-bbdb.el lisp/emacs.d/ivan-wgrep.el

Change357 at Thu Aug 26 08:52:47 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 5d5270ecc502 -r 02f8a62ac793 lisp/emacs.d/ivan-wgrep.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/emacs.d/ivan-wgrep.el	Thu Aug 26 08:52:47 2010 +0200
@@ -0,0 +1,39 @@
+;;; ivan-wgrep.el --- editable grep
+
+;;; Commentary:
+
+;;; THANKS:
+
+;;; BUGS:
+
+;;; INSTALLATION:
+
+;;; Code:
+
+(ivan-face
+ wgrep-face r-darkseagreen2
+ wgrep-file-face normal
+ wgrep-reject-face red
+ wgrep-done-face normal)
+
+
+;; Local Variables:
+;; compile-command: "make"
+;; End:
+
+;; Copyright (C) 2010 Ivan Kanis
+;; Author: Ivan Kanis
+;;
+;; This program is free software ; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation ; either version 2 of the License, or
+;; (at your option) any later version.
+;;
+;; This program is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY ; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
...
 

add wgrep, editable grep buffer

File modified: lisp/misc/Makefile lisp/misc/wgrep.el

Change356 at Thu Aug 26 08:27:11 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 6efca9e63ce4 -r 5d5270ecc502 lisp/misc/wgrep.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/misc/wgrep.el	Thu Aug 26 08:27:11 2010 +0200
@@ -0,0 +1,543 @@
+;;; wgrep --- Writable grep buffer and apply the changes to files
+;; -*- Mode: Emacs-Lisp -*-
+
+;; Author: Hayashi Masahiro <mhayashi1120@gmail.com>
+;; Keywords: grep edit result writable
+;; URL: http://gist.github.com/520805.txt
+
+;; This program is free software; you can redistribute it and/or
+;; modify it under the terms of the GNU General Public License as
+;; published by the Free Software Foundation; either version 3, or (at
+;; your option) any later version.
+
+;; This program is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+;; General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to the
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
+
+;;; Commentary:
+
+;; wgrep provides to edit grep buffer and to apply the changes to
+;; the file.
+;;
+
+;;; Install:
+
+;; Put this file into load-path'ed directory, and byte compile it if
+;; desired.  And put the following expression into your ~/.emacs.
+;;
+;;     (require 'wgrep)
+
+;; This program is forked version. Original version can be downloaded from
+;; http://www.bookshelf.jp/elc/grep-edit.el
...
 

new quote

File modified: conf/quotes.english

Change355 at Thu Aug 26 08:26:31 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 78d666eb6e90 -r 6efca9e63ce4 conf/quotes.english
--- a/conf/quotes.english	Tue Aug 24 21:54:53 2010 +0200
+++ b/conf/quotes.english	Thu Aug 26 08:26:31 2010 +0200
@@ -457,3 +457,6 @@
 We must strive to reach that simplicity that lies beyond sophistication.
     -- John Gardner
 %
+Tension is who you think you should be. Relaxation is who you are.
+    -- Chinese proverb                     
+%


 

always use utf-8 when saving auto load files

File modified: lisp/ivan-autoload.el

Change354 at Tue Aug 24 21:54:53 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 02c447b58941 -r 78d666eb6e90 lisp/ivan-autoload.el
--- a/lisp/ivan-autoload.el	Sun Aug 22 22:55:57 2010 +0200
+++ b/lisp/ivan-autoload.el	Tue Aug 24 21:54:53 2010 +0200
@@ -14,6 +14,7 @@
              "\n;; Local Variables:\n"
              ";; version-control: never\n"
              ";; no-update-autoloads: t\n"
+             ";; coding: utf-8\n"
              ";; End:\n"
              ";;; " (file-name-nondirectory file)
              " ends here\n")


 

export WEB_DIR and VERSION_CONTROL_DIR

use variables in appropriate places in python and emacs

File modified: bin/bgn.sh bin/blog-archive.py bin/hg2rss.py

Change353 at Sun Aug 22 22:55:57 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 11de1fd28eba -r 02c447b58941 bin/hg2rss.py
--- a/bin/hg2rss.py	Sun Aug 22 22:54:01 2010 +0200
+++ b/bin/hg2rss.py	Sun Aug 22 22:55:57 2010 +0200
@@ -4,9 +4,9 @@
 
 import os, re, cgi
 
-home = os.getenv("HOME")
-web_dir = home + "/hg/web/"
+web_dir = os.getenv("WEB_DIR") + "/"
 single_page_dir = web_dir + "hgrss/"
+version_control_dir = os.getenv("VERSION_CONTROL_DIR")
 
 matches = {'changeset' : re.compile("changeset:   (.*):"),
            'user' : re.compile("user:        (.*)"),
@@ -106,7 +106,7 @@
             f.write(string)
     else:
         out_html.write(string)
-    
+
 def output_entry(out_xml, out_html, value):
     if "description" in value:
         descriptions = value["description"].split("\n")
@@ -175,8 +175,8 @@
     return values
 
 def main(last_revision):
-    cache_xml = "hg-xml.cache"
-    cache_html = "hg-html.cache"
+    cache_xml = web_dir + "hg-xml.cache"
+    cache_html = web_dir + "hg-html.cache"
     cache = False
     if os.path.exists(cache_xml) and os.path.exists(cache_html):
         f = open(cache_xml, "r")
@@ -208,6 +208,7 @@
 
 
 if __name__ == "__main__":
+    os.chdir(version_control_dir)
     f = os.popen("hg log -l 1")
...
 

don't compile bin directory

File modified: Makefile

Change352 at Sun Aug 22 22:54:01 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 15c84d84644a -r 11de1fd28eba Makefile
--- a/Makefile	Sun Aug 22 22:40:12 2010 +0200
+++ b/Makefile	Sun Aug 22 22:54:01 2010 +0200
@@ -1,6 +1,5 @@
 SUBDIRS = \
 resume \
-bin \
 lisp \
 info
 


 

use variable to muse web directory path

File modified: lisp/emacs.d/ivan-muse.el

Change351 at Sun Aug 22 22:40:12 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 79d7e6c3575c -r 15c84d84644a lisp/emacs.d/ivan-muse.el
--- a/lisp/emacs.d/ivan-muse.el	Sun Aug 22 19:43:53 2010 +0200
+++ b/lisp/emacs.d/ivan-muse.el	Sun Aug 22 22:40:12 2010 +0200
@@ -45,14 +45,17 @@
    (format "~/hg/conf/quotes.%s"
            (nth (random 3) '("french" "english" "japanese"))) "" ""))
 
+(setq ivan-muse-web-dir (getenv "WEB_DIR"))
+
 (setq
  muse-project-alist
- '(("website" ("~/hg/web")
-    (:base "html" :path "~/hg/web"))
-   ("archive" ("~/hg/web/archive")
-    (:base "html" :path "~/hg/web"))
-   ("blog-rss" ("~/hg/web")
-    (:base "journal-rss" :path "~/hg/web" :include "blog.*\\.muse")))
+ `(("website" (,ivan-muse-web-dir)
+    (:base "html" :path ,ivan-muse-web-dir))
+   ("archive" (,ivan-muse-web-dir)
+    (:base "html" :path ,ivan-muse-web-dir))
+   ("blog-rss" (,ivan-muse-web-dir)
+    (:base "journal-rss" :path ,ivan-muse-web-dir
+           :include "blog.*\\.muse")))
  muse-file-regexp
  (concat "\\`[~/]\\|\\?\\|/\\'\\|\\."
          "\\(html?\\|pdf\\|xml\\|el\\|swf\\|zip\\|txt\\|tar\\|"


 

move web stuff out of version control

File modified: Makefile bin/blog-archive.py bin/hg2rss.py

Change350 at Sun Aug 22 19:43:53 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 03aeefb078f8 -r 79d7e6c3575c bin/hg2rss.py
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/hg2rss.py	Sun Aug 22 19:43:53 2010 +0200
@@ -0,0 +1,257 @@
+#!/usr/bin/env python
+# turn hg log into rss
+# -*- coding: utf-8 -*-
+
+import os, re, cgi
+
+home = os.getenv("HOME")
+web_dir = home + "/hg/web/"
+single_page_dir = web_dir + "hgrss/"
+
+matches = {'changeset' : re.compile("changeset:   (.*):"),
+           'user' : re.compile("user:        (.*)"),
+           'date' : re.compile("date:        (.*)"),
+           'files' : re.compile("files:       (.*)"),
+           }
+
+def output_prelude_xml(out_xml):
+    out_xml.write("""<?xml version="1.0" encoding="utf-8"?>
+<rss version="2.0">
+  <channel>
+    <title>Mercurial commits</title>
+    <link>http://kanis.fr/hg.html</link>
+    <description>List of Mercurial commits</description>
+    <language>en-us</language>
+    <generator>hg2rss.py</generator>""")
+
+def output_prelude_html(out_html, title, big_page=True):
+    out_html.write(
+        """<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+  <head>
+    <title>""" + title + """</title>
+    <meta name="generator" content="hg2rsss.py">
+    <meta http-equiv="Content-Type"
+          content="text/html; charset=utf-8">
+    <link rel="stylesheet"
+type="text/css" charset="utf-8" media="all" href=""")
...
 

ignore web dir

File modified: .hgignore

Change349 at Sat Aug 21 20:03:50 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r f6c1892b8610 -r 03aeefb078f8 .hgignore
--- a/.hgignore	Sat Aug 21 20:03:32 2010 +0200
+++ b/.hgignore	Sat Aug 21 20:03:50 2010 +0200
@@ -34,19 +34,4 @@
 .\#*
 hg2rss.stamp
 *.cache
-web/archive
-web/*.png
-web/*.jpg
-web/*.pl
-web/*.c
-web/soji.py
-web/*.7z
-web/*.exe
-web/*.html
-web/*.xml
-web/*.patch
-web/*.sh
-web/*.cache
-web/*.el
-web/*.bz2
-web/*.bin
+web


 

remove mldonkey for emacs, I never use it

File modified: lisp/Makefile lisp/emacs.d/Makefile lisp/emacs.d/init.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-mldonkey.el

Change348 at Sat Aug 21 20:03:32 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 76222e55c9b1 -r f6c1892b8610 lisp/emacs.d/ivan-mldonkey.el
--- a/lisp/emacs.d/ivan-mldonkey.el	Sat Aug 21 19:45:45 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,43 +0,0 @@
-;;; ivan-mldonkey.el --- mldonkey customization
-
-(require 'ivan-face)
-(require 'ivan-load)
-
-(eval-when-compile
-  (require 'mldonkey-console))
-
-(setq mldonkey-console-use-color nil)
-
-(ivan-face
- mldonkey-header-line-mldonkey-face normal
- mldonkey-header-line-downloaded-face normal
- mldonkey-header-line-bw-up-face normal
- mldonkey-header-line-bw-down-face normal
- mldonkey-vd-title-face normal
- mldonkey-vd-downloading-face normal
- mldonkey-vd-downloading-never-seen-face normal
- mldonkey-vd-never-seen-face normal
- mldonkey-vd-seen-face normal
- mldonkey-vd-queued-face normal
- mldonkey-vd-paused-face normal
- mldonkey-vd-finished-face normal
- mldonkey-motd-face normal)
-
-
-;; Copyright (C) 2007 Ivan Kanis
-;; Author: Ivan Kanis
-;; 
-;;
-;; This program is free software ; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation ; either version 2 of the License, or
-;; (at your option) any later version.
-;;
-;; This program is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY ; without even the implied warranty of
...
 

nterm add unit testing for ED and EL

File modified: lisp/nterm/nterm-ut.el

Change347 at Sat Aug 21 19:45:45 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 14cda99ec7a7 -r 76222e55c9b1 lisp/nterm/nterm-ut.el
--- a/lisp/nterm/nterm-ut.el	Sat Aug 21 19:45:00 2010 +0200
+++ b/lisp/nterm/nterm-ut.el	Sat Aug 21 19:45:45 2010 +0200
@@ -517,12 +517,51 @@
 " ten characters of each flavour, and a rectangle

of 5 x 4 "
 "A's filling the top left of the screen.

Push <RETURN>"))))
 
-(ert-deftest nterm-clear-double-width ()
-  "Write a double underlined line an then clear it.
-There should be a blank screen with no attribute."
+(ert-deftest nterm-vt100-ed-1 ()
+  "Test VT100 ED partial delete."
   (should (nterm-ut
-           "16cc13d28218738d5d8688f7a4e0e4e5" "971a0e38dce04387a30cf29bfddfac4a"
-           "#6d")))
+"200e3d98bfff785a3ae3c34b3e51bf8e" "3a6c01ada23aca922212b949e7beee53"
+  (concat
+"#8"
+"1"
+"1"))))
+
+(ert-deftest nterm-vt100-ed-2 ()
+  "Test VT100 ED complete delete.
+Make sure the double width line gets resetted."
+  (nterm-ut
+"16cc13d28218738d5d8688f7a4e0e4e5" "971a0e38dce04387a30cf29bfddfac4a"
+"#8#6"))
+
+(ert-deftest nterm-vt100-ed-3 ()
+  "Test VT100 ED partial delete on double width line"
+  (nterm-ut
+"9f535039ec87637af83c5812ce282af5" "3e4391164b1188c2ac007e49bf90d01d"
+ (concat
+"#8#6"
+"#61"
+"1#6")))
+
+(ert-deftest nterm-vt100-el ()
+  "Test VT100 EL.
+Double line attribute should not be cleared. Test partial erase
+with argument 0 and 1."
...
 

put updateweb inside bgn.sh

File modified: bin/bgn.sh bin/updateweb.sh

Change346 at Sat Aug 21 19:45:00 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r f1ad9447a287 -r 14cda99ec7a7 bin/updateweb.sh
--- a/bin/updateweb.sh	Thu Aug 19 20:22:29 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,56 +0,0 @@
-#!/bin/sh
-
-web_dir="${HOME}/hg/web/"
-rsync_args="-rvz --times"
-
-web_dest="
-kanis.fr:~/www/
-minimal.cx:~/htdocs/
-"
-server_src="
-ivan@kanis.fr:~/exim-virtual
-ivan@kanis.fr:/etc/_darcs
-"
-
-check () {
-    if test $? -ne 0
-    then
-	printf "${1}.\n"
-	exit 1
-    fi
-}
-
-for dest in ${web_dest}
-do
-    rsync ${rsync_args} "--copy-links" "--copy-dirlinks" \
-"${web_dir}" "${dest}"
-    check "Failed to rsync from ${web_dir} to ${dest}"
-done
-
-backup_dest="${HOME}/local/backup-kanis-fr"
-for src in ${server_src}
-do 
-    rsync ${rsync_args} ${src} "${backup_dest}"
-    check "Failed to rsync from ${src} to ${backup_dest}"
-done
-
-# Local Variables:
...
 

nterm don't reset attributes with EL

File modified: lisp/nterm/nterm.el

Change345 at Thu Aug 19 20:22:29 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r e5bf71cd0e33 -r f1ad9447a287 lisp/nterm/nterm.el
--- a/lisp/nterm/nterm.el	Sun Aug 15 12:24:03 2010 +0200
+++ b/lisp/nterm/nterm.el	Thu Aug 19 20:22:29 2010 +0200
@@ -916,13 +916,14 @@
   "Bell."
   (ding))
 
-(defun nterm-vt100-blank-line (bl-line bl-start bl-end)
-  "Blank LINE from START to END.
+(defun nterm-vt100-blank-line (bl-line bl-start bl-end bl-reset)
+  "Blank LINE from START to END, RESET line attribute.
 If END is nil go to the end of the term. Reset all attributes
-on the line."
+on the line. If RESET is non nil reset line attribute."
   (if (not bl-line)
       (setq bl-line (nterm-cursor-line-get)))
-  (nterm-mem-line-reset bl-line)
+  (if bl-reset
+      (nterm-mem-line-reset bl-line))
   (let ((bl-index bl-start))
     (while (< bl-index bl-end)
       (aset (cdr (assq 'char (nth bl-line nterm-memory))) bl-index ?\s)
@@ -1336,11 +1337,11 @@
     (while (< ed-index nterm-height)
       (cond
        ((and (< ed-index ed-line) (not (eq ed-number 0)))
-        (nterm-vt100-blank-line ed-index 0 nterm-width))
+        (nterm-vt100-blank-line ed-index 0 nterm-width t))
        ((= ed-index ed-line)
-        (nterm-vt100-el-ex ed-number))
+        (nterm-vt100-el-ex ed-number t))
        ((and (> ed-index ed-line) (not (eq ed-number 1)))
-        (nterm-vt100-blank-line ed-index 0 nterm-width)))
+        (nterm-vt100-blank-line ed-index 0 nterm-width t)))
       (incf ed-index))
     (nterm-vt100-escape-end char)))
 
@@ -1348,18 +1349,22 @@
   "EL -- Erase In Line - host to vt100."
   (if nterm-debug-vt100
       (message "EL par=%d" el-number))
...
 

rewrite of ED EL and nterm-vt100-blank-line

The strategy is now to write in display memory changes done by erase and then displaying the line. Pull out common functionality of ED and EL in a function called nterm-vt100-el-ex.

File modified: lisp/nterm/nterm.el

Change344 at Sun Aug 15 12:24:03 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r cdfa572df871 -r e5bf71cd0e33 lisp/nterm/nterm.el
--- a/lisp/nterm/nterm.el	Sun Aug 15 12:20:37 2010 +0200
+++ b/lisp/nterm/nterm.el	Sun Aug 15 12:24:03 2010 +0200
@@ -1,3 +1,4 @@
+;; -*-coding: utf-8 -*-
 ;;; nterm.el --- New TERMinal emulator
 
 ;; Copyright (C) 2009, 2010 Ivan Kanis
@@ -318,17 +319,15 @@
       (set-buffer nterm-buffer-name)
       (while (< emulate-index emulate-length)
         (setq emulate-char (aref output emulate-index))
-        (if (< emulate-char (length (eval nterm-dispatch)))
-            (progn
-              (setq emulate-dispatch (aref (eval nterm-dispatch) emulate-char))
-              (if emulate-dispatch
-                  (progn
-                    (if nterm-debug-emulator
-                        (message "received 0x%x %c dispatch %S"
-                                 emulate-char emulate-char emulate-dispatch))
-                    (funcall emulate-dispatch emulate-char)
-                (if nterm-debug-emulator
-                    (message "received 0x%x not handled" emulate-char)))))
+        (when (< emulate-char (length (eval nterm-dispatch)))
+          (setq emulate-dispatch (aref (eval nterm-dispatch) emulate-char))
+          (when emulate-dispatch
+            (if nterm-debug-emulator
+                (message "received 0x%x %c dispatch %S"
+                         emulate-char emulate-char emulate-dispatch))
+            (funcall emulate-dispatch emulate-char)
+            (if nterm-debug-emulator
+                (message "received 0x%x not handled" emulate-char))))
         (incf emulate-index)))))
 
 (defun nterm-init ()
@@ -423,7 +422,7 @@
       (set-process-filter process 'nterm-emulate))
     (run-hooks 'nterm-mode-hook)))
 
-(defun nterm-scroll-up (top bottom blank-line-function)
+(defun nterm-scroll-up (top bottom line-draw-function)
...
 

add second tests of vttest

force file nterm-ut to be in unicode

File modified: lisp/nterm/nterm-ut.el

Change343 at Sun Aug 15 12:20:37 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r f75db99a73be -r cdfa572df871 lisp/nterm/nterm-ut.el
--- a/lisp/nterm/nterm-ut.el	Sat Aug 14 13:33:56 2010 +0200
+++ b/lisp/nterm/nterm-ut.el	Sun Aug 15 12:20:37 2010 +0200
@@ -1,3 +1,4 @@
+;; -*-coding: utf-8 -*-
 ;;; nterm-ut.el --- nterm unit testing
 
 ;;; Commentary:
@@ -39,6 +40,8 @@
    (string= (md5 (get-buffer nterm-buffer-name)) md5-buf)
    (string= (nterm-mem-checksum) md5-mem)))
 
+
+;;; Test of cursor movements
 (ert-deftest nterm-vttest-1-1 ()
   (should (nterm-ut 
 "8752c42bb037e167ca4d0b5c1eaa3806" "2601cc448dbfd675b3a32619b3791995"
@@ -180,6 +183,347 @@
 "0000004;0000000025HcePush <R"
 "ETURN>"))))
 
+;;; Test of screen features
+(ert-deftest nterm-vttest-2-1 ()
+  (should (nterm-ut 
+"ad8d360cca3dd644390124a846e397cd" "33c2707fe415cd6bd36fbe99279982cb"
+ (concat
+"
[?7h*******************************************"
+"************************************************************"
+"*********************************************************[?"
+"7l****************************************************"
+"************************************************************"
+"************************************************[?7hT"
+"his should be three identical lines of *'s completely fillin"
+"g

the top of the screen without any empty lines between.

"
+"(Test of WRAP AROUND mode setting.)

Push <RETURN>"))))
+
+(ert-deftest nterm-vttest-2-2 ()
+  (should (nterm-ut 
+"ec57a300b5c796408c7ae6d51ae2146a" "689c6d2d0443f7e27bf7f0d6ffacb1db"
+ (concat
+""
...
 

remove nterm-debug-assert it's not useful

File modified: lisp/nterm/nterm.el

Change342 at Sat Aug 14 13:33:56 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 4b10d172f987 -r f75db99a73be lisp/nterm/nterm.el
--- a/lisp/nterm/nterm.el	Sat Aug 14 11:13:26 2010 +0200
+++ b/lisp/nterm/nterm.el	Sat Aug 14 13:33:56 2010 +0200
@@ -130,8 +130,6 @@
 (defvar nterm-debug-cursor nil)
 (defvar nterm-debug-ansi nil)
 (defvar nterm-debug-vt52 nil)
-(defvar nterm-debug-assert nil)
-
 (defvar nterm-record-enable nil
   "Enable recording")
 
@@ -213,23 +211,24 @@
 (defun nterm-assert ()
   "Check integrity of the emulator"
   (interactive)
-  (let ((line (count-lines (point-min) (point-max))))
-    (if (not (= line nterm-height))
-        (error "Number of lines is %d but nterm-height is %d"
-               line nterm-height))
-    (setq line 0)
-    (while (< line nterm-height)
-      (let ((assert-width
-             (progn
-               (goto-line (1+ line))
-               (- (line-end-position) (point))))
-            (assert-expected-width
-             (if (nterm-mem-line-dwl line)
-                 (/ nterm-width 2) nterm-width)))
-        (if (not (= assert-width assert-expected-width))
-            (error "Line %d is not %d character long"
-                   line assert-expected-width)))
-      (setq line (1+ line)))))
+  (with-current-buffer nterm-buffer-name
+    (let ((line (count-lines (point-min) (point-max))))
+      (if (not (= line nterm-height))
+          (error "Number of lines is %d but nterm-height is %d"
+                 line nterm-height))
+      (setq line 0)
+      (while (< line nterm-height)
+        (let ((assert-width
...
 

add ert, emacs unit testing framework

File modified: lisp/Makefile lisp/emacs.d/ivan-load.el lisp/ert/Makefile lisp/ert/ert-batch.el lisp/ert/ert-exp-t.el lisp/ert/ert-exp.el lisp/ert/ert-run.el lisp/ert/ert-tests.el lisp/ert/ert-ui.el lisp/ert/ert.el lisp/ert/ert.texinfo

Change341 at Sat Aug 14 11:13:26 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 0aae2b9b3a87 -r 4b10d172f987 lisp/ert/ert.texinfo
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/ert/ert.texinfo	Sat Aug 14 11:13:26 2010 +0200
@@ -0,0 +1,309 @@
+\input texinfo.tex    @c -*-texinfo-*-
+@c %**start of header
+@setfilename ert.info
+@settitle Emacs Lisp Regression Tests Manual
+@c %**end of header
+
+@dircategory Emacs
+@direntry
+* ERT: (ert).        Emacs Lisp Regression Tests.
+@end direntry
+
+@copying
+Copyright @copyright{} 2008 Phil Hagelberg
+
+@quotation
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
+Texts.
+@end quotation
+@end copying
+
+@node Top
+@top ERT Manual
+
+ERT is a tool for automated testing in Emacs Lisp.  Its main
+features are facilities for defining and running test cases and
+reporting the results as well as for debugging test failures
+interactively.
+
+@menu
+* Introduction::
+* Defining Tests::
+* Should Macro::
+* Test Selectors::
+* Running Tests::
...
 

set disable undo and local variable on nterm buffer

fix missing end escape in HVP

File modified: lisp/nterm/nterm.el

Change340 at Sat Aug 14 11:09:19 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 790a43ca7c99 -r 0aae2b9b3a87 lisp/nterm/nterm.el
--- a/lisp/nterm/nterm.el	Sat Aug 14 11:07:33 2010 +0200
+++ b/lisp/nterm/nterm.el	Sat Aug 14 11:09:19 2010 +0200
@@ -401,9 +401,9 @@
       (setq mode-name "nterm")
       (setq major-mode 'nterm-mode))
   (with-current-buffer nterm-buffer-name
-    (set (make-local-variable 'nterm-argument) ""))
-  (setq truncate-lines t)
-  (buffer-disable-undo nil)
+    (set (make-local-variable 'nterm-argument) "")
+    (setq truncate-lines t)
+    (buffer-disable-undo nil))
   (nterm-init)
   (nterm-vt52-init)
   (nterm-vt100-init)
@@ -1430,7 +1430,8 @@
 TBD handle DECOM"
   (if nterm-debug-vt100
       (message "HVP"))
-  (nterm-vt100-cup char))
+  (nterm-vt100-cup char)
+  (nterm-vt100-escape-end char))
 
 ;; What's the escape sequence for the following?
 ;; LNM -- Line Feed/New Line Mode
@@ -2678,7 +2679,6 @@
     (goto-char record-point)
     (set-buffer record-buf)))
 
-
 (defun nterm-record-step ()
   (interactive)
   (let* ((send-begin (line-beginning-position))


 

nterm unit testing : add first section of vttest

File modified: lisp/nterm/nterm-ut.el

Change339 at Sat Aug 14 11:07:33 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 8cc9c31c79d8 -r 790a43ca7c99 lisp/nterm/nterm-ut.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/nterm/nterm-ut.el	Sat Aug 14 11:07:33 2010 +0200
@@ -0,0 +1,198 @@
+;;; nterm-ut.el --- nterm unit testing
+
+;;; Commentary:
+
+;;; THANKS:
+
+;;; BUGS:
+
+;;; INSTALLATION:
+
+;;; Code:
+(require 'ert-ui)
+(require 'nterm)
+
+(defun nterm-ut-checksum ()
+  "Display screen and memory checksum.
+It places the result in the kill ring."
+  (interactive)
+  (let ((string (format "\"%s\" \"%s\""
+                        (md5 (get-buffer nterm-buffer-name))
+                        (nterm-mem-checksum))))
+    (kill-new string)
+    (message string)))
+
+(defun nterm-ut-init ()
+  "Init nterm for unit testing"
+  (if (get-buffer nterm-buffer-name)
+      (kill-buffer nterm-buffer-name))
+  (setq nterm-unit-testing t)
+  (nterm-mode))
+
+
+(defun nterm-ut (md5-buf md5-mem record)
+  "Emulate sequence RECORD then checksum screen and memory."
+  (nterm-ut-init)
+  (nterm-emulate nil record)
+  (setq nterm-unit-testing nil)
...
 

merge

File modified: lisp/ivan/nterm-gr.el lisp/ivan/nterm.el

Change338 at Fri Aug 13 09:00:32 2010 +0200 by bob

diff -r 55af29610798 -r 8cc9c31c79d8 lisp/nterm/nterm.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/nterm/nterm.el	Fri Aug 13 09:00:32 2010 +0200
@@ -0,0 +1,2844 @@
+;;; nterm.el --- New TERMinal emulator
+
+;; Copyright (C) 2009, 2010 Ivan Kanis
+
+;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Created: 1 Oct 2009
+;; Version: 0.3
+;; Keywords: terminal shell
+
+;; This file is not part of GNU Emacs.
+
+;;; Commentary:
+;; Copyright is at the bottom of this file
+
+;; Disclaimer: nterm is *alpha* software. It will blow up. Don't blame
+;; me, I warned you! A good terminal emulator architecture has display
+;; memory and a table of functions for each character coming in. I
+;; have been in the terminal emulation business for seven years so I
+;; ought to know.
+
+;; Nterm is meant to be a full vt100 compatible terminal emulator. It
+;; has the following features:
+
+;;  - G0 G1 switching with shift in and shift out
+;;  - special graphics characters (used for line drawing)
+;;  - blinking, bright, underline and reverse rendition
+;;  - scroll up and down including within top and bottom margin
+;;  - switch terminal background color
+;;  - switch between 80 and 132 columns screen
+;;  - tabulation set and reset
+;;  - all VT100 escape sequences are handled
+;;  - Double width character
+;;  - Double height character
+
+;; Things that remains to be done:
+;; - fix line drawing single width characters
...
 

add abbrev for org mode, fix long lines

File modified: lisp/emacs.d/ivan-abbrev.el

Change337 at Wed Aug 11 14:48:30 2010 +0200 by bob

diff -r dae74d3b5116 -r 55af29610798 lisp/emacs.d/ivan-abbrev.el
--- a/lisp/emacs.d/ivan-abbrev.el	Fri Aug 06 23:03:31 2010 +0200
+++ b/lisp/emacs.d/ivan-abbrev.el	Wed Aug 11 14:48:30 2010 +0200
@@ -12,9 +12,15 @@
 
 (define-abbrev-table 'text-mode-abbrev-table
   '(("bc" "Bien cordialement,")
-    ("vmr" "Veuillez agréer, Monsieur, l'expression de mes salutations distinguées.")
-    ("vmm" "Veuillez agréer, Madame, Monsieur, l'expression de mes salutations distinguées.")
-    ("vmme" "Veuillez agréer, Madame, l'expression de mes salutations distinguées.")))
+    ("vmr" (concat "Veuillez agréer, Monsieur, "
+                   "l'expression de mes salutations distinguées."))
+    ("vmm" (concat "Veuillez agréer, Madame, Monsieur, "
+                   "l'expression de mes salutations distinguées."))
+    ("vmme" (concat "Veuillez agréer, Madame, "
+                    "l'expression de mes salutations distinguées."))))
+
+(define-abbrev-table 'org-mode-abbrev-table
+  '(("oex" "#+BEGIN_EXAMPLE\n#+END_EXAMPLE")))
 
 (defun ivan-abbrev ()
   "Turn abbrev mode on"
@@ -23,6 +29,7 @@
 ;; modes that use abbrev
 (add-hook 'message-mode-hook 'ivan-abbrev)
 (add-hook 'LaTeX-mode-hook 'ivan-abbrev)
+(add-hook 'org-mode-hook 'ivan-abbrev)
 
 ;; Don't save abbrevs as they are defined here
 (setq save-abbrevs nil)
@@ -33,7 +40,7 @@
 
 ;; Copyright (C) 2008 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


...
 

nterm implement functions necessary for unit testing

- quit grabbing focus - implement SOH which behaves like line feed - add memory checksum function for unit testing

File modified: lisp/nterm/nterm.el

Change336 at Thu Aug 12 20:03:18 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 5ad87d1024e4 -r fe9ad24859b6 lisp/nterm/nterm.el
--- a/lisp/nterm/nterm.el	Thu Aug 12 11:11:21 2010 +0200
+++ b/lisp/nterm/nterm.el	Thu Aug 12 20:03:18 2010 +0200
@@ -1,6 +1,6 @@
 ;;; nterm.el --- New TERMinal emulator
 
-;; Copyright (C) 2009 Ivan Kanis
+;; Copyright (C) 2009, 2010 Ivan Kanis
 
 ;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
 ;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
@@ -121,6 +121,9 @@
     list)
   "Map single width character to unicode double width equivalent.")
 
+(defvar nterm-unit-testing nil
+  "True when doing unit testing")
+
 ;;; Debugging
 (defvar nterm-debug-emulator nil)
 (defvar nterm-debug-vt100 nil)
@@ -286,9 +289,10 @@
   (if nterm-debug-cursor
       (message "nterm-cursor-line-set line=%d" cursor-line))
   (setcar (cdr (assq 'cursor nterm-state)) cursor-line)
-  (goto-char 1)
-  (forward-line cursor-line)
-  (goto-char (+ (line-beginning-position) (nterm-cursor-col-get))))
+  (with-current-buffer nterm-buffer-name
+    (goto-char 1)
+    (forward-line cursor-line)
+    (goto-char (+ (line-beginning-position) (nterm-cursor-col-get)))))
 
 (defun nterm-cursor-col-set (cursor-col)
   "Move cursor to column CURSOR-COL."
@@ -297,40 +301,38 @@
   (if nterm-debug-cursor
       (message "nterm-cursor-col-set col=%d" cursor-col))
   (setcdr (cdr (assq 'cursor nterm-state)) cursor-col)
-  (let ((window (get-buffer-window nterm-buffer-name)))
-    (if window (select-window window)
...
 

add new makefile for nterm

File modified: lisp/Makefile lisp/emacs.d/ivan-load.el lisp/ivan/Makefile lisp/nterm/Makefile

Change335 at Thu Aug 12 11:11:21 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 5909db054dea -r 5ad87d1024e4 lisp/nterm/Makefile
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/nterm/Makefile	Thu Aug 12 11:11:21 2010 +0200
@@ -0,0 +1,38 @@
+SRC = \
+nterm.el \
+nterm.el
+
+ELC = ${SRC:.el=.elc}
+
+AUTOFILE = nterm-auto-load
+
+INSTALLDIR = ${HOME}/build/lisp/ivan
+
+all: $(ELC) $(AUTOFILE).elc
+
+$(AUTOFILE).el: $(SRC)
+	@$(EMACS) $(AUTOLOAD) $(SRC) 
+	@rm -f $(AUTOFILE).el~
+
+include ../elisp.mk
+
+# Local Variables:
+# compile-command: "make -f Makefile"
+# End:
+
+# Copyright (C) 2010 Ivan Kanis
+# Author: Ivan Kanis
+#
+# This program is free software ; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation ; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY ; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program ; if not, write to the Free Software
...
 

move nterm in its own directory

File modified: lisp/ivan/nterm-gr.el lisp/ivan/nterm.el lisp/nterm/nterm-gr.el lisp/nterm/nterm.el

Change334 at Thu Aug 12 11:06:18 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r b45618bdabdc -r 5909db054dea lisp/nterm/nterm.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/nterm/nterm.el	Thu Aug 12 11:06:18 2010 +0200
@@ -0,0 +1,2831 @@
+;;; nterm.el --- New TERMinal emulator
+
+;; Copyright (C) 2009 Ivan Kanis
+
+;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Created: 1 Oct 2009
+;; Version: 0.3
+;; Keywords: terminal shell
+
+;; This file is not part of GNU Emacs.
+
+;;; Commentary:
+;; Copyright is at the bottom of this file
+
+;; Disclaimer: nterm is *alpha* software. It will blow up. Don't blame
+;; me, I warned you! A good terminal emulator architecture has display
+;; memory and a table of functions for each character coming in. I
+;; have been in the terminal emulation business for seven years so I
+;; ought to know.
+
+;; Nterm is meant to be a full vt100 compatible terminal emulator. It
+;; has the following features:
+
+;;  - G0 G1 switching with shift in and shift out
+;;  - special graphics characters (used for line drawing)
+;;  - blinking, bright, underline and reverse rendition
+;;  - scroll up and down including within top and bottom margin
+;;  - switch terminal background color
+;;  - switch between 80 and 132 columns screen
+;;  - tabulation set and reset
+;;  - all VT100 escape sequences are handled
+;;  - Double width character
+;;  - Double height character
+
+;; Things that remains to be done:
+;; - fix line drawing single width characters
...
 

move rsync in a function

File modified: bin/bgn.sh

Change333 at Tue Aug 10 20:40:54 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 970b5d82f21b -r b45618bdabdc bin/bgn.sh
--- a/bin/bgn.sh	Sun Aug 08 19:23:46 2010 +0200
+++ b/bin/bgn.sh	Tue Aug 10 20:40:54 2010 +0200
@@ -19,6 +19,11 @@
     fi
 }
 
+fn_rsync () {
+    ionice -c3 rsync -a --delete ${1} ${2}
+    check "Failed to rsync from ${1} to ${2}"
+}
+
 ALSA_FILE="${HOME}/local/alsa.cnf"
 if test -f "${ALSA_FILE}"
 then
@@ -57,18 +62,16 @@
     ssh-add
     check "password error with  private key"
     updateweb.sh &
-    nice rsync -a ~/lucia /media/Iomega_HDD &
 fi
 wrapper.py emacs &
 firefox > /dev/null 2>&1 &
 
 if test "X${host_name}" = "Xtao"
 then
-    nice rsync -a ~/lucia /media/Iomega_HDD
-    nice rsync -a ${portable_dir}/listen ~/local
-    nice rsync -a ${portable_dir}/zic ~/local
+    fn_rsync ~/lucia ${portable_dir}
+    fn_rsync ${portable_dir}/listen ~/local
+    fn_rsync ${portable_dir}/keep ~/local
 fi
-nice rsync -a ${portable_dir}/keep ~/local
 
 # Local Variables:
 # compile-command: "sh start.sh"


 

backup music, do rsync sequentially

File modified: bin/bgn.sh

Change332 at Sun Aug 08 19:23:46 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r dae74d3b5116 -r 970b5d82f21b bin/bgn.sh
--- a/bin/bgn.sh	Fri Aug 06 23:03:31 2010 +0200
+++ b/bin/bgn.sh	Sun Aug 08 19:23:46 2010 +0200
@@ -1,6 +1,8 @@
 #!/bin/sh
 
 hd_name="Iomega_HDD"
+host_name="`hostname`"
+
 uname=`uname`
 if test "X${uname}" = "XDarwin"
 then
@@ -50,7 +52,7 @@
     check "compilation error"
 fi
 
-if test "X`hostname`" = "Xtao"
+if test "X${host_name}" = "Xtao"
 then
     ssh-add
     check "password error with  private key"
@@ -60,7 +62,13 @@
 wrapper.py emacs &
 firefox > /dev/null 2>&1 &
 
-nice rsync -a ${portable_dir}/keep ~/local &
+if test "X${host_name}" = "Xtao"
+then
+    nice rsync -a ~/lucia /media/Iomega_HDD
+    nice rsync -a ${portable_dir}/listen ~/local
+    nice rsync -a ${portable_dir}/zic ~/local
+fi
+nice rsync -a ${portable_dir}/keep ~/local
 
 # Local Variables:
 # compile-command: "sh start.sh"


 

halo 2600

File modified: .hgignore lisp/emacs.d/ivan-muse.el

Change331 at Fri Aug 06 23:03:31 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 86bfdcdc9f03 -r dae74d3b5116 lisp/emacs.d/ivan-muse.el
--- a/lisp/emacs.d/ivan-muse.el	Fri Aug 06 22:59:26 2010 +0200
+++ b/lisp/emacs.d/ivan-muse.el	Fri Aug 06 23:03:31 2010 +0200
@@ -56,7 +56,7 @@
  muse-file-regexp
  (concat "\\`[~/]\\|\\?\\|/\\'\\|\\."
          "\\(html?\\|pdf\\|xml\\|el\\|swf\\|zip\\|txt\\|tar\\|"
-         "py\\|pl\\|7z\\|patch\\|exe\\)"
+         "py\\|pl\\|7z\\|patch\\|exe\\|bin\\)"
          "\\(\\.\\(gz\\|bz2\\)\\)?\\'"))
 
 


 

rewrite flac2mp3 from python to shell

File modified: bin/flac2mp3.py bin/flac2mp3.sh

Change330 at Fri Aug 06 22:59:26 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 4cfc48086d40 -r 86bfdcdc9f03 bin/flac2mp3.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/flac2mp3.sh	Fri Aug 06 22:59:26 2010 +0200
@@ -0,0 +1,49 @@
+#!/bin/sh
+
+check () {
+    if test $? -ne 0
+    then
+	printf "$1\n"
+	exit 1
+    fi
+}
+
+printf "artist: "
+read artist
+printf "album: "
+read album
+
+for file in *.flac
+do
+    file_mp3="`echo ${file} | sed s/flac$/mp3/`"
+    flac --silent -cd "${file}" | lame -h - "${file_mp3}" > /dev/null 2>&1
+    check "Fail to convert ${file} to ${file_mp3}"
+    track=`echo ${file} | cut -b 1-2`
+    title="`expr "${file}" : ".* - \(.*\).flac"`"
+    mp3info -t "${title}" -a "${artist}" -l "${album}" -n "${track}" \
+"${file_mp3}"
+    check "Fail to tag ${file_mp3}"
+    rm "${file}"
+    check "Fail to remove ${file}"
+done
+
+# Local Variables:
+# compile-command: "sh flac2mp3.sh"
+# End:
+
+# Copyright (C) 2010 Ivan Kanis
+# Author: Ivan Kanis
+#
+# This program is free software ; you can redistribute it and/or modify
...
 

rename start.sh to bgn.sh

File modified: bin/bgn.sh bin/setenv.sh bin/start.sh

Change329 at Tue Jul 27 19:36:23 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r b00865c2efe7 -r 4cfc48086d40 bin/start.sh
--- a/bin/start.sh	Mon Jul 26 22:24:15 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-#!/bin/sh
-
-hd_name="Iomega_HDD"
-uname=`uname`
-if test "X${uname}" = "XDarwin"
-then
-    portable_dir="/Volumes/${hd_name}"
-else
-    portable_dir="/media/${hd_name}"
-fi
-
-check () {
-    if test $? -ne 0
-    then
-	printf "$1\n"
-	exit 1
-    fi
-}
-
-ALSA_FILE="${HOME}/local/alsa.cnf"
-if test -f "${ALSA_FILE}"
-then
-    sudo alsactl -f "${ALSA_FILE}" restore
-fi
-
-if test "X${uname}" = "XDarwin"
-then
-    sudo umount "${portable_dir}"
-    hd_device=`diskutil list | grep "${hd_name}" | awk '{printf $6}'`
-    uid=`id -u`
-    gid=`id -g`
-    sudo ntfs-3g -o "uid=${uid},gid=${gid}" \
-"/dev/${hd_device}" "${portable_dir}"
-else
-    if test ! -d "${portable_dir}/keep"
-    then
-        sudo mount "${portable_dir}"
...
 

big web site reorganisation

all binaries are in that path as the generated web site

File modified: .hgignore bin/updateweb.sh lisp/emacs.d/ivan-muse.el resume/muse.tmpl resume/resume.xml

Change328 at Mon Jul 26 22:24:15 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 11965453f457 -r b00865c2efe7 resume/resume.xml
--- a/resume/resume.xml	Sun Jul 25 22:07:55 2010 +0200
+++ b/resume/resume.xml	Mon Jul 26 22:24:15 2010 +0200
@@ -101,7 +101,7 @@
       <title lang='en'>Manager, Release Engineering</title>
       <title lang='fr'>Manager, Release Engineering</title>
       <employer>Accelrys</employer>
-      <url>www.accerlrys.com</url>
+      <url>www.accelrys.com</url>
       <town>Cambridge</town>
       <country>uk</country>
       <from>2006-08-21</from>
@@ -498,7 +498,7 @@
 
     <p lang='fr'>Auteur de
     |Multiboot with GRUB|www.tldp.org/HOWTO/Multiboot-with-GRUB.html|
-    la documentation Linux.</p>
+    dans la documentation Linux.</p>
 
   </other>
 


 

version 0.3

File modified: lisp/ivan/nterm.el

Change327 at Sun Jul 25 22:07:55 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 25b295e87239 -r 11965453f457 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sun Jul 25 13:21:41 2010 +0200
+++ b/lisp/ivan/nterm.el	Sun Jul 25 22:07:55 2010 +0200
@@ -5,7 +5,7 @@
 ;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
 ;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
 ;; Created: 1 Oct 2009
-;; Version: 0.2
+;; Version: 0.3
 ;; Keywords: terminal shell
 
 ;; This file is not part of GNU Emacs.


 

downcase local variables

File modified: svf/release.sh

Change326 at Sun Jul 25 13:21:41 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 22e460f0d4a7 -r 25b295e87239 svf/release.sh
--- a/svf/release.sh	Sun Jul 25 13:20:49 2010 +0200
+++ b/svf/release.sh	Sun Jul 25 13:21:41 2010 +0200
@@ -1,14 +1,16 @@
 #!/bin/sh
 
-VERSION=0.1
-STAGE_DIR=${HOME}/build
-WEB_DIR=${STAGE_DIR}/kanis.fr
-TAR_BALL=${WEB_DIR}/svf-${VERSION}.tar.bz2
-SVF_DIR=svf-${VERSION}
-SVF_ABSOLUTE_DIR=${STAGE_DIR}/${SVF_DIR}
-SVF_DOC_DIR=${SVF_ABSOLUTE_DIR}/doc
-SVF_HG_DIR=${HOME}/hg/svf
-SFV_REMOVE_FILES="
+# release svf tar ball on web site
+
+version=0.1
+stage_dir=${HOME}/build
+web_dir=${stage_dir}/kanis.fr
+tar_ball=${web_dir}/svf-${version}.tar.bz2
+svf_dir=svf-${version}
+svf_absolute_dir=${stage_dir}/${svf_dir}
+svf_doc_dir=${svf_absolute_dir}/doc
+svf_hg_dir=${HOME}/hg/svf
+svf_remove_files="
 FormTest.php
 InputTest.php
 Makefile
@@ -20,7 +22,7 @@
 example4.php
 release.sh
 "
-SVF_DOC_FILES="
+svf_doc_files="
 svf-example1.png
 svf-example2.png
 svf-example3.png
@@ -36,32 +38,32 @@
     fi
 }
...
 

convert updateweb from python to shell

File modified: bin/start.sh bin/updateweb.py bin/updateweb.sh

Change325 at Sun Jul 25 13:20:49 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 4bd86fef81cc -r 22e460f0d4a7 bin/updateweb.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/updateweb.sh	Sun Jul 25 13:20:49 2010 +0200
@@ -0,0 +1,56 @@
+#!/bin/sh
+
+web_dir="${HOME}/hg/web"
+rsync_args="-rvz --times"
+
+# ivan@minimal.cx:~/htdocs/
+web_dest="
+ivan@kanis.fr:~/www/
+"
+server_src="
+ivan@kanis.fr:~/exim-virtual
+ivan@kanis.fr:/etc/_darcs
+"
+
+check () {
+    if test $? -ne 0
+    then
+	printf "${1}.\n"
+	exit 1
+    fi
+}
+
+for dest in ${web_dest}
+do
+    rsync ${rsync_args} "--copy-links" "--copy-dirlinks" \
+"${web_dir}" "${dest}"
+    check "Failed to rsync from ${web_dir} to ${dest}"
+done
+
+backup_dest="${HOME}/local/backup-kanis-fr"
+for src in ${server_src}
+do 
+    rsync ${rsync_args} ${src} "${backup_dest}"
+    check "Failed to rsync from ${src} to ${backup_dest}"
+done
+
+# Local Variables:
...
 

Use old behavior for line motion

File modified: lisp/emacs.d/ivan-var.el

Change324 at Thu Jul 22 18:23:54 2010 +0200 by bob

diff -r 7827aa1ec4ac -r 4bd86fef81cc lisp/emacs.d/ivan-var.el
--- a/lisp/emacs.d/ivan-var.el	Tue Jul 20 09:00:19 2010 +0200
+++ b/lisp/emacs.d/ivan-var.el	Thu Jul 22 18:23:54 2010 +0200
@@ -132,9 +132,13 @@
  ;; Display line number on the status
  line-number-mode t
 
+ ;; Old line motion behavior
+ line-move-visual nil
+
  ;; make the manpage the current buffer in the current window
  Man-notify-method 'pushy
 
+ ;; mouse yank commands yank at point instead of at click
  mouse-yank-at-point t
 
  ;; Tack newline at end of file


 

merge

File modified:

Change323 at Tue Jul 20 09:00:19 2010 +0200 by bob

diff -r 767549d20fe7 -r 7827aa1ec4ac lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Fri Jul 09 08:43:45 2010 +0200
+++ b/lisp/emacs.d/ivan-message.el	Tue Jul 20 09:00:19 2010 +0200
@@ -76,32 +76,35 @@
 (defun ivan-message-setup ()
   "Setup language in a message"
   (ivan-bbdb-late-bind)
-  (let ((string (message-fetch-field "to"))
-        (match nil)
-        (rec nil))
-    (if string
-        ;; it's a reply
-        (progn
-          ;; look in bbdb note for a clue
-          (if (and (string-match "<\\(.*\\)>" string)
-                   (setq match (match-string 1 string))
-                   (setq rec (car (bbdb-search (bbdb-records) nil nil match))))
-              (let ((language (ivan-bbdb-note rec)))
-                (cond ((eq language 'french)
-                       (ivan-message-setup-french))
-                      ((eq language 'japanese)
-                       (ivan-message-setup-japanese))
-                      (t
-                       (ivan-message-setup-english))))
-            ;; otherwize look at language of message replied to
-            (if (and (get-buffer "*Article*")
-                     (string= "french"
-                              (save-window-excursion
-                                (set-buffer "*Article*")
-                                (al-lang-conf (al-guess-buffer-language))
-                                (caar result-list-long))))
-                (ivan-message-setup-french)
-              (ivan-message-setup-english))))))
+  (if (eq ivan-var-user 'lucia)
+      (ivan-message-setup-french)
+    (let ((string (message-fetch-field "to"))
+          (match nil)
+          (rec nil))
+      (if string
+          ;; it's a reply
+          (progn
...
 

ivan-start remove compiler warning

File modified: lisp/emacs.d/ivan-start.el

Change322 at Fri Jul 09 08:43:45 2010 +0200 by bob

diff -r fa5e44b97d7d -r 767549d20fe7 lisp/emacs.d/ivan-start.el
--- a/lisp/emacs.d/ivan-start.el	Thu Jul 08 17:38:28 2010 +0200
+++ b/lisp/emacs.d/ivan-start.el	Fri Jul 09 08:43:45 2010 +0200
@@ -1,4 +1,6 @@
 ;;; ivan-start.el --- init file
+(eval-when-compile
+  (defvar tagname))
 
 ;; turn yes/no question to y/n
 (fset 'yes-or-no-p 'y-or-n-p)


 

setup french dictionary for Lucia when composing mail

File modified: lisp/emacs.d/ivan-message.el

Change321 at Sun Jul 18 18:25:03 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r fa5e44b97d7d -r b755d6bbb266 lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Thu Jul 08 17:38:28 2010 +0200
+++ b/lisp/emacs.d/ivan-message.el	Sun Jul 18 18:25:03 2010 +0200
@@ -76,32 +76,35 @@
 (defun ivan-message-setup ()
   "Setup language in a message"
   (ivan-bbdb-late-bind)
-  (let ((string (message-fetch-field "to"))
-        (match nil)
-        (rec nil))
-    (if string
-        ;; it's a reply
-        (progn
-          ;; look in bbdb note for a clue
-          (if (and (string-match "<\\(.*\\)>" string)
-                   (setq match (match-string 1 string))
-                   (setq rec (car (bbdb-search (bbdb-records) nil nil match))))
-              (let ((language (ivan-bbdb-note rec)))
-                (cond ((eq language 'french)
-                       (ivan-message-setup-french))
-                      ((eq language 'japanese)
-                       (ivan-message-setup-japanese))
-                      (t
-                       (ivan-message-setup-english))))
-            ;; otherwize look at language of message replied to
-            (if (and (get-buffer "*Article*")
-                     (string= "french"
-                              (save-window-excursion
-                                (set-buffer "*Article*")
-                                (al-lang-conf (al-guess-buffer-language))
-                                (caar result-list-long))))
-                (ivan-message-setup-french)
-              (ivan-message-setup-english))))))
+  (if (eq ivan-var-user 'lucia)
+      (ivan-message-setup-french)
+    (let ((string (message-fetch-field "to"))
+          (match nil)
+          (rec nil))
+      (if string
+          ;; it's a reply
+          (progn
...
 

remove dependence to util.py

File modified: bin/build.py bin/ivan-setup.py bin/system-name.py

Change320 at Thu Jul 08 17:38:28 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r e04fb8ddd8b3 -r fa5e44b97d7d bin/system-name.py
--- a/bin/system-name.py	Thu Jul 08 17:21:48 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-#!/usr/bin/env python
-
-import util
-
-print util.sysname()
-
-# Copyright (C) 2006  Tadpole Computer Ltd.
-# Author: Ivan Kanis
-# 
-#
-# This program is free software ; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation ; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY ; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program ; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-# Local Variables:
-# compile-command: "./system-name.py"
-# End:


 

Bind M-i s to shell and M-i S to nterm

File modified: lisp/emacs.d/ivan-keymap.el

Change319 at Thu Jul 08 17:21:48 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 4314c4f30136 -r e04fb8ddd8b3 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Thu Jul 08 16:59:42 2010 +0200
+++ b/lisp/emacs.d/ivan-keymap.el	Thu Jul 08 17:21:48 2010 +0200
@@ -94,8 +94,8 @@
  "o" 'display-time-world
  "p" 'pr-ps-fast-fire
  "r" 'ivan-fun-remember
- "s" (if (eq window-system 'w32) 'ivan-comint-shell 'nterm)
- "S" 'ivan-term
+ "s" 'ivan-comint-shell
+ "S" 'nterm
  "t" 'ivan-org
  "u" 'w3m-goto-url
  "v" 'volume


 

swap M-i c and M-i C

File modified: lisp/emacs.d/ivan-keymap.el

Change318 at Thu Jul 08 16:59:42 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r fb2f010fc511 -r 4314c4f30136 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Thu Jul 08 15:33:36 2010 +0200
+++ b/lisp/emacs.d/ivan-keymap.el	Thu Jul 08 16:59:42 2010 +0200
@@ -69,7 +69,7 @@
 (ivan-keymap-prefix
  ivan-keymap-map-m-i
  "A" 'ivan-anki
- "C" 'calendar
+ "C" 'ivan-org-calendar
  "G" 'gcalc
  "K" 'ivan-org-keyring
  "M-g" 'ivan-w3m-map
@@ -81,7 +81,7 @@
  "W" 'ivan-toggle-whitespace
  "a" 'ivan-org-agenda
  "b" 'ivan-bbdb-map
- "c" 'ivan-org-calendar
+ "c" 'calendar
  "d" 'ivan-fun-date
  "e" 'vc-dir
  "f" 'ivan-fun-full-screen


 

fix equality bug in start script

File modified: bin/start.sh

Change317 at Thu Jul 08 15:33:36 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 7cefa6db85b1 -r fb2f010fc511 bin/start.sh
--- a/bin/start.sh	Wed Jul 07 20:25:22 2010 +0200
+++ b/bin/start.sh	Thu Jul 08 15:33:36 2010 +0200
@@ -2,7 +2,7 @@
 
 hd_name="Iomega_HDD"
 uname=`uname`
-if test "X${uname}" == "XDarwin"
+if test "X${uname}" = "XDarwin"
 then
     portable_dir="/Volumes/${hd_name}"
 else
@@ -23,7 +23,7 @@
     sudo alsactl -f "${ALSA_FILE}" restore
 fi
 
-if test "X${uname}" == "XDarwin"
+if test "X${uname}" = "XDarwin"
 then
     sudo umount "${portable_dir}"
     hd_device=`diskutil list | grep "${hd_name}" | awk '{printf $6}'`
@@ -50,7 +50,7 @@
     check "compilation error"
 fi
 
-if test $(hostname) = tao
+if test "X`hostname`" = "Xtao"
 then
     ssh-add
     check "password error with  private key"


 

set ivan-var-local-dir to ~/local

File modified: lisp/emacs.d/ivan-var.el

Change316 at Wed Jul 07 20:25:22 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 7137c94fafe0 -r 7cefa6db85b1 lisp/emacs.d/ivan-var.el
--- a/lisp/emacs.d/ivan-var.el	Wed Jul 07 20:22:17 2010 +0200
+++ b/lisp/emacs.d/ivan-var.el	Wed Jul 07 20:25:22 2010 +0200
@@ -38,7 +38,7 @@
 (defvar ivan-var-letter-english nil
   "Language of a letter, nil is french otherwise english.")
 
-(defvar ivan-var-local-dir "~/keep/"
+(defvar ivan-var-local-dir "~/local/"
   "Directory where I stick local files.
 The directory separator must be the last character.")
 


 

put portable file backup in ~/local

File modified: lisp/emacs.d/ivan-var.el

Change315 at Wed Jul 07 20:22:17 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 4147ae494f82 -r 7137c94fafe0 lisp/emacs.d/ivan-var.el
--- a/lisp/emacs.d/ivan-var.el	Wed Jul 07 20:16:00 2010 +0200
+++ b/lisp/emacs.d/ivan-var.el	Wed Jul 07 20:22:17 2010 +0200
@@ -92,7 +92,8 @@
  custom-file "~/tmp/emacs-custom.el"
 
  ;; Stick backup files in temporary directory
- backup-directory-alist `((,ivan-var-portable-dir . "~/keep/portable")
+ ;; Put portable file in local directory
+ backup-directory-alist `((,ivan-var-portable-dir . "~/local/portable")
                           ("." . "~/tmp"))
 
  ;; abbreviation are case sensitive
@@ -164,7 +165,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

fix lonely parenthesis

File modified: lisp/emacs.d/ivan-gnus.el

Change314 at Wed Jul 07 20:16:00 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 5259db0458ed -r 4147ae494f82 lisp/emacs.d/ivan-gnus.el
--- a/lisp/emacs.d/ivan-gnus.el	Wed Jul 07 20:13:19 2010 +0200
+++ b/lisp/emacs.d/ivan-gnus.el	Wed Jul 07 20:16:00 2010 +0200
@@ -76,8 +76,7 @@
       ;; it for reading mail without news
       (defalias 'gnus-y-or-n-p 'ivan-gnus-yes)
       (gnus level)
-      (defalias 'gnus-y-or-n-p 'y-or-n-p)
-      )))
+      (defalias 'gnus-y-or-n-p 'y-or-n-p))))
 
 (defun ivan-gnus-article-mode()
   "Article hook function"


 

skip make on the mac

File modified: bin/start.sh

Change313 at Wed Jul 07 20:13:19 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 29f7fffae71d -r 5259db0458ed bin/start.sh
--- a/bin/start.sh	Sun Jul 04 08:14:04 2010 +0200
+++ b/bin/start.sh	Wed Jul 07 20:13:19 2010 +0200
@@ -27,7 +27,10 @@
 then
     sudo umount "${portable_dir}"
     hd_device=`diskutil list | grep "${hd_name}" | awk '{printf $6}'`
-    sudo ntfs-3g "/dev/${hd_device}" "${portable_dir}"
+    uid=`id -u`
+    gid=`id -g`
+    sudo ntfs-3g -o "uid=${uid},gid=${gid}" \
+"/dev/${hd_device}" "${portable_dir}"
 else
     if test ! -d "${portable_dir}/keep"
     then
@@ -39,8 +42,13 @@
 hg pull ${portable_dir}/keep/hg
 hg update
 check "error pulling mercurial"
-make
-check "compilation error"
+
+# make is busted on the mac...
+if test "X${uname}" != "XDarwin"
+then
+    make
+    check "compilation error"
+fi
 
 if test $(hostname) = tao
 then
@@ -52,7 +60,7 @@
 wrapper.py emacs &
 firefox > /dev/null 2>&1 &
 
-nice rsync -a /media/Iomega_HDD/keep ~/local &
+nice rsync -a ${portable_dir}/keep ~/local &
 
 # Local Variables:
 # compile-command: "sh start.sh"

...
 

only call uname once

File modified: bin/start.sh

Change312 at Sun Jul 04 08:14:04 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 408b05eb38ad -r 29f7fffae71d bin/start.sh
--- a/bin/start.sh	Sun Jul 04 06:51:16 2010 +0200
+++ b/bin/start.sh	Sun Jul 04 08:14:04 2010 +0200
@@ -1,8 +1,8 @@
 #!/bin/sh
 
 hd_name="Iomega_HDD"
-
-if test "X`uname`" == "XDarwin"
+uname=`uname`
+if test "X${uname}" == "XDarwin"
 then
     portable_dir="/Volumes/${hd_name}"
 else
@@ -23,7 +23,7 @@
     sudo alsactl -f "${ALSA_FILE}" restore
 fi
 
-if test "X`uname`" == "XDarwin"
+if test "X${uname}" == "XDarwin"
 then
     sudo umount "${portable_dir}"
     hd_device=`diskutil list | grep "${hd_name}" | awk '{printf $6}'`


 

merge

File modified: bin/setenv.sh bin/start.sh

Change311 at Sun Jul 04 06:51:16 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 1f0608dab258 -r 408b05eb38ad lisp/emacs.d/ivan-start.el
--- a/lisp/emacs.d/ivan-start.el	Sun May 23 19:22:24 2010 +0200
+++ b/lisp/emacs.d/ivan-start.el	Sun Jul 04 06:51:16 2010 +0200
@@ -22,9 +22,14 @@
 ;; Turn on windmove
 (windmove-default-keybindings)
 
+;; put etags information in bookmark
+(defun ivan-etags-bookmark ()
+  (bookmark-set tagname))
+
+(add-hook 'find-tag-hook 'ivan-etags-bookmark)
+
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

add OSX ntfs write mount media logic

File modified: bin/start.sh

Change310 at Sun May 23 19:22:24 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r d2110d75e4a8 -r 1f0608dab258 bin/start.sh
--- a/bin/start.sh	Sun May 23 18:32:55 2010 +0200
+++ b/bin/start.sh	Sun May 23 19:22:24 2010 +0200
@@ -1,6 +1,13 @@
 #!/bin/sh
 
-portable_dir=/media/Iomega_HDD
+hd_name="Iomega_HDD"
+
+if test "X`uname`" == "XDarwin"
+then
+    portable_dir="/Volumes/${hd_name}"
+else
+    portable_dir="/media/${hd_name}"
+fi
 
 check () {
     if test $? -ne 0
@@ -10,16 +17,23 @@
     fi
 }
 
-ALSA_FILE=${HOME}/local/alsa.cnf
-if test -f ${ALSA_FILE}
+ALSA_FILE="${HOME}/local/alsa.cnf"
+if test -f "${ALSA_FILE}"
 then
-    sudo alsactl -f ${ALSA_FILE} restore
+    sudo alsactl -f "${ALSA_FILE}" restore
 fi
 
-if test ! -d ${portable_dir}/keep
+if test "X`uname`" == "XDarwin"
 then
-    sudo mount ${portable_dir}
-    check "error mounting ${portable_dir}"
+    sudo umount "${portable_dir}"
+    hd_device=`diskutil list | grep "${hd_name}" | awk '{printf $6}'`
+    sudo ntfs-3g "/dev/${hd_device}" "${portable_dir}"
+else
+    if test ! -d "${portable_dir}/keep"
...
 

add ~/hg/bin directory in path

File modified: bin/setenv.sh

Change309 at Sun May 23 18:32:55 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r e68e61a7f137 -r d2110d75e4a8 bin/setenv.sh
--- a/bin/setenv.sh	Sun May 23 18:26:01 2010 +0200
+++ b/bin/setenv.sh	Sun May 23 18:32:55 2010 +0200
@@ -34,6 +34,7 @@
 /sbin:\
 /usr/bin/X11:\
 /usr/X11/bin:\
+${HOME}/hg/bin:\
 ${local_path}/acrobat/bin:\
 ${local_path}/cxoffice/bin:\
 ${local_path}/rplayer:\


 

add cration of home dir in setup script

File modified: bin/setup.sh

Change308 at Sun May 23 18:26:01 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 02353f89da79 -r e68e61a7f137 bin/setup.sh
--- a/bin/setup.sh	Sun May 23 17:45:23 2010 +0200
+++ b/bin/setup.sh	Sun May 23 18:26:01 2010 +0200
@@ -1,3 +1,55 @@
+PORTABLE_DIR=/media/Iomega_HDD/keep/
+
+check () {
+    error=${?}
+    msg=${1}
+    if test "X${error}" != "X0"
+    then
+        printf "${msg}.\n"
+        exit 1
+    fi
+}
+
+make_dir () {
+    dir=${1}
+    if test ! -d ${dir}
+    then
+        mkdir -p ${dir}
+        check "Failed creating directory ${dir}"
+    fi
+}
+
+make_link () {
+    source=${1}
+    target=${2}
+    if test -e ${source} -a -d `dirname ${source}`
+    then
+       if test -d ${target}
+       then
+           rm -r ${target}
+           check "Failed to remove directory ${target}"
+       fi
+       if test -e ${target}
+       then
+           rm ${target}
+           check "Failed to remove file ${target}"
+       fi
+       ln -s ${source} ${target}
...
 

emacs wrapper add support for MacOSX

remove obscure code about multitty that I don't use

File modified: bin/wrapper.py

Change307 at Sun May 23 17:45:23 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r e9d448cdeec5 -r 02353f89da79 bin/wrapper.py
--- a/bin/wrapper.py	Sat May 22 19:57:53 2010 +0200
+++ b/bin/wrapper.py	Sun May 23 17:45:23 2010 +0200
@@ -48,33 +48,16 @@
 
     # Wrapper functions
     def emacs(self):
-        self.emacs_helper()
-
-    def emacs_helper(self):
-        import re
-        lisp = ''
-
-        self.add_argument('--no-site-file')
-        version = emacs_server()
+        # support Mac OSX
+        mac_path = "/Applications/Emacs.app/Contents/MacOS"
+        if os.path.exists(mac_path):
+	    os.chdir(mac_path)
+            self.change_command("./Emacs")
+	self.add_argument('--no-site-file')
         if 'lucia' in self.cmd:
             self.cmd.remove('lucia')
             self.env['ivan_user'] = 'lucia'
 
-        # multi tty
-        if re.compile("multi-tty").search(version):
-            self.change_command('emacsclient')
-            if 'DISPLAY' in os.environ:
-                self.add_argument('--current-frame')
-            else:
-                self.add_argument('--tty')
-                # and terminal size
-                lisp += "(signal-process (emacs-pid) 'WINCH)"
-                # fix multi tty and focus bug
-                lisp += '(top-level)'
-
-        if lisp != '':
-            self.add_argument('--eval')
-            self.add_argument(lisp)
         if "GPG_AGENT_INFO" in self.env:
...
 

default sudoer file

File modified: conf/sudoers

Change306 at Sat May 22 19:57:53 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 0915d01813d3 -r e9d448cdeec5 conf/sudoers
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/conf/sudoers	Sat May 22 19:57:53 2010 +0200
@@ -0,0 +1,1 @@
+ivan ALL=(ALL) NOPASSWD: ALL


 

handle python wrapper in a loop

remove xsane as it's not used

File modified: bin/setenv.sh bin/wrapper.py

Change305 at Sat May 22 19:43:21 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r edb4906eb6d4 -r 0915d01813d3 bin/wrapper.py
--- a/bin/wrapper.py	Sat May 22 19:04:32 2010 +0200
+++ b/bin/wrapper.py	Sat May 22 19:43:21 2010 +0200
@@ -180,9 +180,6 @@
         if 'EDITOR' in self.env:
             self.change_command(self.env['EDITOR'])
 
-    def xsane(self):
-        french(self.env)
-
 # utility functions
 def emacs_server():
     """Returns version of emacs running or empty string"""


 

add fink

File modified: conf/bashrc

Change304 at Sat May 22 19:04:32 2010 +0200 by Ivan Kanis <ivan@mac.foo>

diff -r 8de5801e2151 -r edb4906eb6d4 conf/bashrc
--- a/conf/bashrc	Wed May 12 19:17:41 2010 +0200
+++ b/conf/bashrc	Sat May 22 19:04:32 2010 +0200
@@ -5,16 +5,16 @@
 # uncomment for debugging
 #set -x
 
+# fink
+test -r /sw/bin/init.sh && . /sw/bin/init.sh
+
 # setup environment with a script
 file=/tmp/setenv.$$
 ${HOME}/hg/bin/setenv.sh --interactive > ${file}
 source ${file}
 
-export LH_BASE=/home/debian/tnf/live-helper
-export PATH=$PATH:${LH_BASE}/helpers
-# Copyright (C) 2006  Ivan Kanis
+# Copyright (C) 2006-10  Ivan Kanis
 # Author: Ivan Kanis
-# $Id: bashrc 2398 2008-08-27 09:29:32Z ivan $
 #
 # This program is free software ; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -29,5 +29,3 @@
 # You should have received a copy of the GNU General Public License
 # along with this program ; if not, write to the Free Software
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-


 

merge

File modified:

Change303 at Thu Jun 17 18:47:04 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r a9197384544d -r f3511e335988 bin/stop.sh
--- a/bin/stop.sh	Thu Jun 17 18:46:04 2010 +0200
+++ b/bin/stop.sh	Thu Jun 17 18:47:04 2010 +0200
@@ -14,7 +14,7 @@
 then
     cd ${HOME}/hg
     hg push ${portable_dir}/keep/hg
-    check "error pulling mercurial"
+    check "error pushing mercurial"
 fi
 
 sudo halt


 

hide firefox error messages

File modified: bin/start.sh

Change302 at Thu Jun 17 18:46:04 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r abfc996c6d72 -r a9197384544d bin/start.sh
--- a/bin/start.sh	Thu Jun 17 18:45:16 2010 +0200
+++ b/bin/start.sh	Thu Jun 17 18:46:04 2010 +0200
@@ -36,7 +36,7 @@
     nice rsync -a ~/lucia /media/Iomega_HDD &
 fi
 wrapper.py emacs &
-firefox &
+firefox > /dev/null 2>&1 &
 
 nice rsync -a /media/Iomega_HDD/keep ~/local &
 


 

add hg/bin to PATH

File modified: bin/setenv.sh

Change301 at Thu Jun 17 18:45:16 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 1821511cc5a8 -r abfc996c6d72 bin/setenv.sh
--- a/bin/setenv.sh	Tue Jun 15 20:34:59 2010 +0200
+++ b/bin/setenv.sh	Thu Jun 17 18:45:16 2010 +0200
@@ -32,6 +32,7 @@
 /usr/bin:\
 /bin:\
 /sbin:\
+${HOME}/hg/bin:\
 /usr/bin/X11:\
 /usr/X11/bin:\
 ${local_path}/acrobat/bin:\


 

fix push message

File modified: bin/stop.sh

Change300 at Thu Jun 17 10:07:47 2010 +0200 by Ivan Kanis <squeeze@koi>

diff -r 778cf21c537d -r 2fe336ec0156 bin/stop.sh
--- a/bin/stop.sh	Sun May 30 13:19:37 2010 +0200
+++ b/bin/stop.sh	Thu Jun 17 10:07:47 2010 +0200
@@ -14,7 +14,7 @@
 then
     cd ${HOME}/hg
     hg push ${portable_dir}/keep/hg
-    check "error pulling mercurial"
+    check "error pushing mercurial"
 fi
 
 sudo halt


 

erc add listening note to is listening to...

File modified: lisp/emacs.d/ivan-erc.el

Change299 at Tue Jun 15 20:34:59 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r db93baded8d1 -r 1821511cc5a8 lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Sat Jun 05 11:36:48 2010 +0200
+++ b/lisp/emacs.d/ivan-erc.el	Tue Jun 15 20:34:59 2010 +0200
@@ -70,7 +70,8 @@
       (replace-regexp-in-string
        ".*[0-9][0-9] - " ""
        (file-name-sans-extension
-        (file-name-nondirectory file)))))))
+        (file-name-nondirectory file)))
+      " ♪♫"))))
 
 (setq
  erc-auto-query 'window-noselect


 

clean up ssh stuff as I never use it

File modified: lisp/emacs.d/ivan-comint.el

Change298 at Sat Jun 05 11:36:48 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 04f9d805bc1c -r db93baded8d1 lisp/emacs.d/ivan-comint.el
--- a/lisp/emacs.d/ivan-comint.el	Sat Jun 05 11:26:58 2010 +0200
+++ b/lisp/emacs.d/ivan-comint.el	Sat Jun 05 11:36:48 2010 +0200
@@ -19,17 +19,6 @@
   (require 'dirtrack)
   (require 'shell))
 
-(defvar ivan-comint-ssh-init nil
-  "String to send to remote shell")
-
-(defvar ivan-comint-ssh-dirtrack-list
-  '("^emacs \\(.*\\)>" 1)
-  "List for ssh directory tracking see `dirtrack-list'")
-
-(defvar ivan-comint-ssh-executable
-  "plink"
-  "Name of the ssh executable")
-
 (defun ivan-comint-shell ()
   (interactive)
   (shell)
@@ -39,27 +28,6 @@
     (setq dirtrack-directory-function
           'file-name-as-directory)))
 
-(defun ivan-comint-ssh (host user)
-  (interactive "sHost: \nsUser: ")
-  (let ((buf (get-buffer-create (concat "*ssh-" host "-" user "*"))))
-    (make-comint-in-buffer "ssh" buf
-                           ivan-comint-ssh-executable
-                           nil "-l" user host)
-    (shell buf)
-    (if ivan-comint-ssh-init
-        (process-send-string buf ivan-comint-ssh-init))
-    (local-set-key "\t" 'comint-dynamic-complete)
-    (local-set-key "\C-c\C-c" 'ivan-comint-ssh-interrupt))
-  (setq dirtrack-list ivan-comint-ssh-dirtrack-list)
-  (add-hook 'comint-preoutput-filter-functions 'dirtrack nil t)
-  (setq dirtrack-directory-function 'file-name-as-directory))
-
-(defalias 'ssh 'ivan-comint-ssh)
...
 

fix compile warning

File modified: lisp/emacs.d/ivan-erc.el

Change297 at Sat Jun 05 11:26:58 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r b562ba1be2d1 -r 04f9d805bc1c lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Sat Jun 05 11:22:52 2010 +0200
+++ b/lisp/emacs.d/ivan-erc.el	Sat Jun 05 11:26:58 2010 +0200
@@ -5,6 +5,7 @@
   (require 'ivan-fun)
   (require 'ivan-var)
   (require 'ivan-japanese)
+  (require 'emms)
   (require 'erc)
   (require 'erc-button)
   (require 'erc-join)


 

add "is listening to" in ERC with emms

File modified: lisp/emacs.d/ivan-erc.el

Change296 at Sat Jun 05 11:22:52 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 778cf21c537d -r b562ba1be2d1 lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Sun May 30 13:19:37 2010 +0200
+++ b/lisp/emacs.d/ivan-erc.el	Sat Jun 05 11:22:52 2010 +0200
@@ -47,7 +47,8 @@
 
 (defun ivan-erc-mode-hook ()
   (ivan-keymap-define erc-mode-map
-                      "\C-c\C-c" ivan-erc-clear-buffer
+                      "C-c C-c" ivan-erc-clear-buffer
+                      "C-c l" ivan-erc-listen
                       "<home>" beginning-of-buffer
                       "<backtab>" erc-button-previous)
   (if (string= "#nihongo" (buffer-name))
@@ -57,6 +58,19 @@
 (add-hook 'erc-join-hook 'ivan-erc-join)
 (add-hook 'erc-mode-hook 'ivan-erc-mode-hook)
 
+(defun ivan-erc-listen ()
+  (interactive)
+  (let ((file (cdr (assoc 'name (emms-playlist-current-selected-track)))))
+    (insert
+     (concat
+      "/me listens to "
+      (nth 2 (nreverse (split-string file "/")))
+      " - "
+      (replace-regexp-in-string
+       ".*[0-9][0-9] - " ""
+       (file-name-sans-extension
+        (file-name-nondirectory file)))))))
+
 (setq
  erc-auto-query 'window-noselect
  erc-button-alist '((erc-button-url-regexp 0 t browse-url 0))


 

put history of etags in bookmark

File modified: lisp/emacs.d/ivan-start.el

Change295 at Sun May 30 13:19:37 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 6cbc37037d36 -r 778cf21c537d lisp/emacs.d/ivan-start.el
--- a/lisp/emacs.d/ivan-start.el	Sat May 29 19:41:27 2010 +0200
+++ b/lisp/emacs.d/ivan-start.el	Sun May 30 13:19:37 2010 +0200
@@ -22,9 +22,14 @@
 ;; Turn on windmove
 (windmove-default-keybindings)
 
+;; put etags information in bookmark
+(defun ivan-etags-bookmark ()
+  (bookmark-set tagname))
+
+(add-hook 'find-tag-hook 'ivan-etags-bookmark)
+
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

start playlist when launching emms

File modified: lisp/emacs.d/ivan-emms.el

Change294 at Sat May 29 19:41:27 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 8de5801e2151 -r 6cbc37037d36 lisp/emacs.d/ivan-emms.el
--- a/lisp/emacs.d/ivan-emms.el	Wed May 12 19:17:41 2010 +0200
+++ b/lisp/emacs.d/ivan-emms.el	Sat May 29 19:41:27 2010 +0200
@@ -52,7 +52,8 @@
         (require 'emms-tag-editor)
         (require 'url-util)
         (require 'emms-playlist-mode)
-        (emms-minimalistic))))
+        (emms-minimalistic)
+        (setq emms-playlist-default-major-mode 'emms-playlist-mode))))
 
 (defun ivan-emms-message-info ()
   (interactive)


 

complete overhaul of setenv.sh

File modified: bin/setenv.sh

Change293 at Wed May 12 19:17:41 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 5b305e5da2eb -r 8de5801e2151 bin/setenv.sh
--- a/bin/setenv.sh	Sat May 08 10:54:58 2010 +0200
+++ b/bin/setenv.sh	Wed May 12 19:17:41 2010 +0200
@@ -1,83 +1,17 @@
 #!/bin/sh
 
-# return 0 if string is contained inside a string
-# input needle haystack
-match() {
-    # backslash forward slash
-    if test X${BASH} = X
-    then
-        back=$(echo $1 | sed -e 's/\//\\\\\//g')
-    else 
-        back=$(echo $1 | sed -e 's/\//\\\//g')
-    fi
-    needle=$(echo $2 | sed -e 's/.*\('$back'\).*/\1/')
-    if [ "$1" = "$needle" ]
-    then
-	return 0
-    fi
-    return 1
-}
+local_path=${HOME}/local
 
-os_name() {
-    os=$(uname -s)
+name_os() {
+    os=`uname -s`
     if [ "${os}" = "SunOS" ]
     then
-	echo "solaris"
-    elif match CYGWIN $os
-    then
-	echo "cygwin"
+	printf "solaris"
     else
-	echo ${os} | tr [A-Z] [a-z]
+	printf ${os} | tr [A-Z] [a-z]
     fi
 }
...
 

gnus fix get to: for reply

File modified: lisp/emacs.d/ivan-gnus.el

Change292 at Sat May 08 10:54:58 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 7d44039ea147 -r 5b305e5da2eb lisp/emacs.d/ivan-gnus.el
--- a/lisp/emacs.d/ivan-gnus.el	Mon May 03 23:01:13 2010 +0200
+++ b/lisp/emacs.d/ivan-gnus.el	Sat May 08 10:54:58 2010 +0200
@@ -234,13 +234,13 @@
 ;;; wrappers around reply functions
 (defun ivan-gnus-reply ()
   (interactive)
-  (ivan-gnus-get-to)
-  (gnus-summary-reply))
+  (gnus-summary-reply)
+  (ivan-gnus-get-to))
 
 (defun ivan-gnus-reply-with-original (n)
   (interactive "P")
-  (ivan-gnus-get-to)
-  (gnus-summary-reply-with-original n))
+  (gnus-summary-reply-with-original n)
+  (ivan-gnus-get-to))
 
 (defun ivan-gnus-reply-top (n &optional wide)
   (interactive "P")


 

nterm assert check for line width

nterm-mem-line-get returns line attribute

File modified: lisp/ivan/nterm.el

Change291 at Mon May 03 23:01:13 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 2ff53df95f93 -r 7d44039ea147 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon May 03 21:57:38 2010 +0200
+++ b/lisp/ivan/nterm.el	Mon May 03 23:01:13 2010 +0200
@@ -213,7 +213,21 @@
   (let ((line (count-lines (point-min) (point-max))))
     (if (not (= line nterm-height))
         (error "Number of lines is %d but nterm-height is %d"
-               line nterm-height))))
+               line nterm-height))
+    (setq line 0)
+    (while (< line nterm-height)
+      (let ((assert-width
+             (progn
+               (goto-line (1+ line))
+               (- (line-end-position) (point))))
+            (assert-expected-width
+             (if (nterm-mem-line-dwl line)
+                 (/ nterm-width 2) nterm-width)))
+        (if (not (= assert-width assert-expected-width))
+            (error "Line %d is not %d character long"
+                   line assert-expected-width)))
+      (setq line (1+ line)))))
+
 (defun nterm-blank-screen (&optional char)
   "Blank screen and memory with CHAR.
 If char is not specified fill with space.
@@ -1065,13 +1079,12 @@
   "TBD document"
   (nth (if (aref attribute nterm-vt100-char-special) 1 0)
        (nth (if nterm-dwl-exist
-                (cond ((nterm-mem-line-get
-                        nterm-vt100-line-decdwl) 1)
-                      ((nterm-mem-line-get
-                        nterm-vt100-line-decdwl-top) 2)
-                      ((nterm-mem-line-get
-                        nterm-vt100-line-decdwl-bottom) 3)
-                      (t 0)) 0)
+                (let ((i-t-attr
+                       (nterm-mem-line-get (nterm-cursor-line-get))))
+                  (cond ((aref i-t-attr nterm-vt100-line-decdwl) 1)
+                        ((aref i-t-attr nterm-vt100-line-decdwl-top) 2)
...
 

init emms when adding track from dired

File modified: lisp/emacs.d/ivan-dired.el lisp/emacs.d/ivan-emms.el

Change290 at Mon May 03 21:57:38 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r e847a9660649 -r 2ff53df95f93 lisp/emacs.d/ivan-emms.el
--- a/lisp/emacs.d/ivan-emms.el	Mon May 03 21:41:35 2010 +0200
+++ b/lisp/emacs.d/ivan-emms.el	Mon May 03 21:57:38 2010 +0200
@@ -14,10 +14,8 @@
   (require 'ivan-face)
   (require 'ivan-fun)
   (require 'emms-lastfm)
-  (require 'emms-lyrics)
   (require 'emms-playing-time)
-  (require 'emms-playlist-mode)
-  (require 'later-do))
+  (require 'emms-playlist-mode))
 
 (defvar ivan-emms-dir nil
   "List of directories to look for music.")
@@ -25,20 +23,6 @@
 (defvar ivan-emms-shuffle nil
   "t when playlist is shuffled.")
 
-(defun ivan-emms-init ()
-  (if (not (fboundp 'emms-playlist-mode-go))
-      (progn
-        (require 'emms-playlist-mode)
-        (require 'emms-browser)
-        (require 'emms-setup)
-        (require 'emms-tag-editor)
-        (require 'emms-lyrics)
-        (require 'url-util)
-        (require 'emms-playlist-mode)
-        (emms-minimalistic)
-        (setq emms-player-list
-              (list 'emms-player-mplayer-playlist 'emms-player-mplayer)))))
-
 (defun ivan-emms-add-and-shuffle ()
   (interactive)
   (ivan-emms-init)
@@ -50,15 +34,45 @@
         (emms-start))
     (message "You need to parameter variable ivan-emms-dir")))
 
+(defun ivan-emms-add-dir (dir)
...
 

nterm fix double width character

remove aref of boolean for debugging

File modified: lisp/ivan/nterm.el

Change289 at Mon May 03 21:41:35 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 292f783f195a -r e847a9660649 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sun May 02 12:36:58 2010 +0200
+++ b/lisp/ivan/nterm.el	Mon May 03 21:41:35 2010 +0200
@@ -62,9 +62,6 @@
 ;; terminal. Someone can easily reproduce a bug by replaying the trace
 ;; both on xterm and nterm.
 
-;; It's not complete yet but it passes the first three tests of
-;; vttest. I will get back to it when I have time.
-
 ;; The latest version is at http://kanis.fr/hg/lisp/ivan/nterm.el
 
 ;; FAQ
@@ -125,27 +122,12 @@
   "Map single width character to unicode double width equivalent.")
 
 ;;; Debugging
-(defvar nterm-debug (make-bool-vector 6 nil)
-  "Debugging bool vector")
-
-(defvar nterm-debug-emulator 0)
-(defvar nterm-debug-vt100 1)
-(defvar nterm-debug-cursor 2)
-(defvar nterm-debug-ansi 3)
-(defvar nterm-debug-vt52 4)
-(defvar nterm-debug-assert 5)
-;; (aset nterm-debug nterm-debug-emulator t)
-;; (aset nterm-debug nterm-debug-emulator nil)
-;; (aset nterm-debug nterm-debug-vt100 t)
-;; (aset nterm-debug nterm-debug-vt100 nil)
-;; (aset nterm-debug nterm-debug-cursor t)
-;; (aset nterm-debug nterm-debug-cursor nil)
-;; (aset nterm-debug nterm-debug-ansi t)
-;; (aset nterm-debug nterm-debug-ansi nil)
-;; (aset nterm-debug nterm-debug-vt52 t)
-;; (aset nterm-debug nterm-debug-vt52 nil)
-;; (aset nterm-debug nterm-debug-assert t)
-;; (aset nterm-debug nterm-debug-assert nil)
+(defvar nterm-debug-emulator nil)
+(defvar nterm-debug-vt100 nil)
+(defvar nterm-debug-cursor nil)
...
 

nterm optimize nterm-vt100-char-insert-table

File modified: lisp/ivan/nterm.el

Change288 at Sun May 02 12:36:58 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 0f3308b55478 -r 292f783f195a lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sat May 01 22:42:23 2010 +0200
+++ b/lisp/ivan/nterm.el	Sun May 02 12:36:58 2010 +0200
@@ -1055,7 +1055,8 @@
          (insert-mem-attribute
           (cdr (assq 'attr (nth insert-line nterm-memory))))
          (insert-attribute (cdr (assq 'attribute nterm-vt100-state)))
-         (insert-char-table (nterm-vt100-char-insert-table insert-attribute))
+         (insert-char-table (eval (nterm-vt100-char-insert-table
+                                   insert-attribute)))
          (insert-char (if (< char (length insert-char-table))
                           (aref insert-char-table char))))
     (if insert-char
@@ -1080,12 +1081,16 @@
 
 (defun nterm-vt100-char-insert-table (attribute)
   "TBD document"
-  (eval (nth (if (aref attribute nterm-vt100-char-special) 1 0)
-             (nth (cond ((nterm-mem-line-get nterm-vt100-line-decdwl) 1)
-                        ((nterm-mem-line-get nterm-vt100-line-decdwl-top) 2)
-                        ((nterm-mem-line-get nterm-vt100-line-decdwl-bottom) 3)
-                        (t 0))
-                  nterm-vt100-charset-table))))
+  (nth (if (aref attribute nterm-vt100-char-special) 1 0)
+       (nth (if nterm-dwl-exist
+                (cond ((nterm-mem-line-get
+                        nterm-vt100-line-decdwl) 1)
+                      ((nterm-mem-line-get
+                        nterm-vt100-line-decdwl-top) 2)
+                      ((nterm-mem-line-get
+                        nterm-vt100-line-decdwl-bottom) 3)
+                      (t 0)) 0)
+            nterm-vt100-charset-table)))
 
 (defun nterm-vt100-char-insert-blink (attribute line-attr)
   "TBD document"
@@ -1570,7 +1575,7 @@
   "TBD document me."
   (let* ((draw-attribute
           (aref (cdr (assq 'attr (nth line nterm-memory))) draw-index))
-         (draw-char-table (nterm-vt100-char-insert-table draw-attribute))
...
 

nterm optimize nterm-vt100-width

File modified: lisp/ivan/nterm.el

Change287 at Sat May 01 22:42:23 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r c6436d76655c -r 0f3308b55478 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sat May 01 17:39:01 2010 +0200
+++ b/lisp/ivan/nterm.el	Sat May 01 22:42:23 2010 +0200
@@ -169,6 +169,10 @@
 (defvar nterm-blink-time 1
   "Time in second for blinking.
 Set to nil if you want to disable blinking")
+
+(defvar nterm-dwl-exist nil
+  "True if double width line exists")
+
 ;;; core nterm functions
 (defmacro nterm-defdispatch (dispatch-list)
   "Create a dispatch table from DISPATCH-LIST."
@@ -778,6 +782,7 @@
 (defconst nterm-vt100-char-reverse 3)
 (defconst nterm-vt100-char-special 4)
 (defconst nterm-vt100-char-uk 5)
+
 ;;; Line attributes
 (defconst nterm-vt100-line-decdwl 0
   "Line is double width")
@@ -1171,6 +1176,7 @@
   (nterm-mem-line-set nterm-vt100-line-decdwl nil)
   (nterm-mem-line-set nterm-vt100-line-decdwl-top t)
   (nterm-mem-line-set nterm-vt100-line-decdwl-bottom nil)
+  (setq nterm-dwl-exist t)
   (nterm-vt100-line-draw)
   (nterm-vt100-escape-end char))
 
@@ -1181,6 +1187,7 @@
   (nterm-mem-line-set nterm-vt100-line-decdwl nil)
   (nterm-mem-line-set nterm-vt100-line-decdwl-top nil)
   (nterm-mem-line-set nterm-vt100-line-decdwl-bottom t)
+  (setq nterm-dwl-exist t)
   (nterm-vt100-line-draw)
   (nterm-vt100-escape-end char))
 
@@ -1191,6 +1198,7 @@
   (nterm-mem-line-set nterm-vt100-line-decdwl t)
   (nterm-mem-line-set nterm-vt100-line-decdwl-top nil)
...
 

nterm fix typos

File modified: lisp/ivan/nterm.el

Change286 at Sat May 01 17:39:01 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 65edbe722438 -r c6436d76655c lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Fri Apr 30 08:39:14 2010 +0200
+++ b/lisp/ivan/nterm.el	Sat May 01 17:39:01 2010 +0200
@@ -11,12 +11,12 @@
 ;; This file is not part of GNU Emacs.
 
 ;;; Commentary:
-;; Copyright is a the bottome of this file
+;; Copyright is at the bottom of this file
 
 ;; Disclaimer: nterm is *alpha* software. It will blow up. Don't blame
 ;; me, I warned you! A good terminal emulator architecture has display
 ;; memory and a table of functions for each character coming in. I
-;; have been int the terminal emulation business for seven years so I
+;; have been in the terminal emulation business for seven years so I
 ;; ought to know.
 
 ;; Nterm is meant to be a full vt100 compatible terminal emulator. It
@@ -73,7 +73,6 @@
 ;; A: Nope, it's vt100 character set, 8 bit character are just ignored
 ;; for now
 
-
 ;;; THANKS:
 
 ;;; BUGS:


 

merge

File modified:

Change285 at Fri Apr 30 08:39:14 2010 +0200 by "Ivan Kanis"


 

emms-dire switch e and E

File modified: lisp/emacs.d/ivan-dired.el

Change284 at Tue Apr 27 11:14:56 2010 +0200 by "Ivan Kanis"

diff -r 095a3a371413 -r 512b4c50a80d lisp/emacs.d/ivan-dired.el
--- a/lisp/emacs.d/ivan-dired.el	Sun Apr 25 17:54:42 2010 +0200
+++ b/lisp/emacs.d/ivan-dired.el	Tue Apr 27 11:14:56 2010 +0200
@@ -41,12 +41,12 @@
   (ivan-keymap-keep-global dired-mode-map)
   (ivan-keymap-define dired-mode-map
                       "A" gnus-dired-attach
-                      "E" emms-add-dired
+                      "E" emms-play-dired
+                      "_" dired-omit-mode
                       "c" wdired-change-to-wdired-mode
-                      "e" emms-play-dired
+                      "e" emms-add-dired
                       "j" gnus-dired-find-file-mailcap
-                      "p" gnus-dired-print
-                      "_" dired-omit-mode)
+                      "p" gnus-dired-print)
   (dired-omit-mode 1))
 
 (add-hook 'dired-mode-hook 'ivan-dired-hook)
@@ -88,7 +88,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

dired emms switch e and E meaning

File modified: lisp/emacs.d/ivan-dired.el

Change283 at Thu Apr 29 20:14:09 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 095a3a371413 -r 08d17b942e75 lisp/emacs.d/ivan-dired.el
--- a/lisp/emacs.d/ivan-dired.el	Sun Apr 25 17:54:42 2010 +0200
+++ b/lisp/emacs.d/ivan-dired.el	Thu Apr 29 20:14:09 2010 +0200
@@ -41,12 +41,12 @@
   (ivan-keymap-keep-global dired-mode-map)
   (ivan-keymap-define dired-mode-map
                       "A" gnus-dired-attach
-                      "E" emms-add-dired
+                      "E" emms-play-dired
+                      "_" dired-omit-mode
                       "c" wdired-change-to-wdired-mode
-                      "e" emms-play-dired
+                      "e" emms-add-dired
                       "j" gnus-dired-find-file-mailcap
-                      "p" gnus-dired-print
-                      "_" dired-omit-mode)
+                      "p" gnus-dired-print)
   (dired-omit-mode 1))
 
 (add-hook 'dired-mode-hook 'ivan-dired-hook)
@@ -88,7 +88,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

fix line drawing characters

File modified: lisp/ivan/nterm.el

Change282 at Sun Apr 25 17:54:42 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 989972100e7b -r 095a3a371413 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sun Apr 25 14:25:27 2010 +0200
+++ b/lisp/ivan/nterm.el	Sun Apr 25 17:54:42 2010 +0200
@@ -778,6 +778,7 @@
 (defconst nterm-vt100-char-blink 2)
 (defconst nterm-vt100-char-reverse 3)
 (defconst nterm-vt100-char-special 4)
+(defconst nterm-vt100-char-uk 5)
 ;;; Line attributes
 (defconst nterm-vt100-line-decdwl 0
   "Line is double width")
@@ -1067,7 +1068,7 @@
                   (cdr (assq 'background nterm-vt100-state))
                   (cdr (assq 'foreground nterm-vt100-state))))
                 ((characterp insert-char)
-                 (insert (char-to-string char))
+                 (insert (char-to-string insert-char))
                  (put-text-property (- (point) 1) (point) 'face
                                     (cdr (assq 'face nterm-vt100-state)))))
           (nterm-vt100-cuf ?\s)))
@@ -1504,6 +1505,7 @@
                (car (nth (nterm-vt100-mode-decscnm-0) nterm-vt100-color)))
          ;; cons of (g0 . g1)
          (cons 'charset (list 'normal 'normal))
+         (cons 'current-charset 0)
          (cons 'tab (make-bool-vector nterm-width nil))
          (cons 'top-margin 0)
          (cons 'bottom-margin (- nterm-height 1))
@@ -1559,15 +1561,17 @@
 
 (defun nterm-vt100-line-draw-attribute (line draw-index draw-dwl)
   "TBD document me."
-  (let ((draw-attribute
-         (aref (cdr (assq 'attr (nth line nterm-memory))) draw-index))
-        (draw-char
-         (aref (cdr (assq 'char (nth line nterm-memory))) draw-index))
-        (draw-face (nterm-vt100-face-default))
-        (draw-background
-         (car (nth (nterm-vt100-mode-decscnm-0) nterm-vt100-color)))
-        (draw-foreground
-         (car (nth (nterm-vt100-mode-decscnm-1) nterm-vt100-color))))
...
 

nterm fix scroll up

remove assertion message

File modified: lisp/ivan/nterm.el

Change281 at Sun Apr 25 14:25:27 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 04b11cd7426e -r 989972100e7b lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Thu Apr 22 18:59:44 2010 +0200
+++ b/lisp/ivan/nterm.el	Sun Apr 25 14:25:27 2010 +0200
@@ -225,7 +225,6 @@
 (defun nterm-assert ()
   "Check integrity of the emulator"
   (interactive)
-  (message "I am asserting")
   (let ((line (count-lines (point-min) (point-max))))
     (if (not (= line nterm-height))
         (error "Number of lines is %d but nterm-height is %d"
@@ -438,9 +437,8 @@
     (nterm-cursor-position-set (cons top 0))
     (nterm-kill-line)
     (nterm-cursor-position-set (cons bottom 0))
-    (end-of-line)
     (insert "\n")
-    (nterm-vt100-line-draw (1+ bottom))
+    (nterm-vt100-line-draw bottom)
     (nterm-cursor-position-set up-pos)))
 
 (defun nterm-scroll-down (top bottom blank-line-function)
@@ -2796,13 +2794,9 @@
 (provide 'nterm)
 
 ;;; Copyright crap
-;; Local Variables:
-;; compile-command: "make"
-;; End:
 
 ;; Copyright (C) 2009 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

nterm blanck the whole line

add assertion routine to check for errors

File modified: lisp/ivan/nterm.el

Change280 at Thu Apr 22 18:59:44 2010 +0200 by Ivan Kanis <squeeze@koi>

diff -r 0bfd6609b253 -r 04b11cd7426e lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Thu Apr 22 15:32:15 2010 +0200
+++ b/lisp/ivan/nterm.el	Thu Apr 22 18:59:44 2010 +0200
@@ -126,7 +126,7 @@
   "Map single width character to unicode double width equivalent.")
 
 ;;; Debugging
-(defvar nterm-debug (make-bool-vector 5 nil)
+(defvar nterm-debug (make-bool-vector 6 nil)
   "Debugging bool vector")
 
 (defvar nterm-debug-emulator 0)
@@ -134,6 +134,7 @@
 (defvar nterm-debug-cursor 2)
 (defvar nterm-debug-ansi 3)
 (defvar nterm-debug-vt52 4)
+(defvar nterm-debug-assert 5)
 ;; (aset nterm-debug nterm-debug-emulator t)
 ;; (aset nterm-debug nterm-debug-emulator nil)
 ;; (aset nterm-debug nterm-debug-vt100 t)
@@ -144,6 +145,8 @@
 ;; (aset nterm-debug nterm-debug-ansi nil)
 ;; (aset nterm-debug nterm-debug-vt52 t)
 ;; (aset nterm-debug nterm-debug-vt52 nil)
+;; (aset nterm-debug nterm-debug-assert t)
+;; (aset nterm-debug nterm-debug-assert nil)
 
 (defvar nterm-record-enable nil
   "Enable recording")
@@ -219,6 +222,14 @@
   (let ((collect-number (string-to-number number)))
     (if (eq collect-number 0) default collect-number)))
 
+(defun nterm-assert ()
+  "Check integrity of the emulator"
+  (interactive)
+  (message "I am asserting")
+  (let ((line (count-lines (point-min) (point-max))))
+    (if (not (= line nterm-height))
+        (error "Number of lines is %d but nterm-height is %d"
+               line nterm-height))))
...
 

reset tab when changing width

File modified: lisp/ivan/nterm.el

Change279 at Thu Apr 22 15:32:15 2010 +0200 by Ivan Kanis <squeeze@koi>

diff -r 34c604d76372 -r 0bfd6609b253 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Thu Apr 22 09:43:23 2010 +0200
+++ b/lisp/ivan/nterm.el	Thu Apr 22 15:32:15 2010 +0200
@@ -1149,7 +1149,9 @@
     (set-frame-width nil deccolm-width)
     (nterm-vt100-home)
     (setq nterm-width deccolm-width)
-    (nterm-blank-screen ?\s)))
+    (nterm-blank-screen ?\s)
+    (nterm-vt100-tab-clear)
+    (nterm-vt100-tab-reset)))
 
 (defun nterm-vt100-decdhl-top (char)
   "DECDHL -- Double Height Line (DEC Private)"


 

start is a built in on windows, alias to bgn for begin

File modified: bin/setenv.sh

Change278 at Thu Apr 22 09:43:23 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 81d4eb6ff3e1 -r 34c604d76372 bin/setenv.sh
--- a/bin/setenv.sh	Tue Apr 20 16:33:05 2010 +0200
+++ b/bin/setenv.sh	Thu Apr 22 09:43:23 2010 +0200
@@ -315,7 +315,7 @@
 alias lynx='lynx -nounderline'
 alias make-kpkg='nice make-kpkg --rootcmd fakeroot'
 alias mount='sudo mount'
-alias start='start.sh'
+alias bgn='start.sh'
 alias stop='stop.sh'
 alias skype='skype.sh'
 alias umount='sudo umount'


 

forget about ack

File modified: lisp/emacs.d/ivan-grep.el

Change277 at Tue Apr 20 16:33:05 2010 +0200 by "Ivan Kanis"

diff -r f18513fd3330 -r 81d4eb6ff3e1 lisp/emacs.d/ivan-grep.el
--- a/lisp/emacs.d/ivan-grep.el	Tue Apr 20 16:21:58 2010 +0200
+++ b/lisp/emacs.d/ivan-grep.el	Tue Apr 20 16:33:05 2010 +0200
@@ -22,8 +22,6 @@
   (let ((current-prefix-arg (not current-prefix-arg)))
     (call-interactively 'grep)))
 
-;; TBD fix this for windows...
-(grep-apply-setting 'grep-command "perl ~/hg/bin/ack.pl --nocolor --noheading ")
 (grep-apply-setting 'grep-use-null-device nil)
 
 ;; Local Variables:
@@ -32,7 +30,7 @@
 
 ;; Copyright (C) 2009 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

add binding for emms add-directory-tree and playlist-mode-go

File modified: lisp/emacs.d/ivan-keymap.el

Change276 at Tue Apr 20 16:21:58 2010 +0200 by "Ivan Kanis"

diff -r 711a3cd57e69 -r f18513fd3330 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Tue Apr 20 16:18:48 2010 +0200
+++ b/lisp/emacs.d/ivan-keymap.el	Tue Apr 20 16:21:58 2010 +0200
@@ -134,9 +134,11 @@
  "a" 'ivan-emms-add-and-shuffle
  "b" 'emms-previous
  "i" 'ivan-emms-message-info
+ "l" 'emms-playlist-mode-go
  "n" 'emms-next
  "p" 'emms-pause
- "s" 'ivan-emms-toggle-shuffle)
+ "s" 'ivan-emms-toggle-shuffle
+ "t" 'emms-add-directory-tree)
 
 ;;; Global keymap
 (ivan-keymap-global


 

start emms without info

File modified: lisp/emacs.d/ivan-emms.el

Change275 at Tue Apr 20 16:18:48 2010 +0200 by "Ivan Kanis"

diff -r d980cc58ce4e -r 711a3cd57e69 lisp/emacs.d/ivan-emms.el
--- a/lisp/emacs.d/ivan-emms.el	Tue Apr 20 16:18:02 2010 +0200
+++ b/lisp/emacs.d/ivan-emms.el	Tue Apr 20 16:18:48 2010 +0200
@@ -28,15 +28,14 @@
 (defun ivan-emms-init ()
   (if (not (fboundp 'emms-playlist-mode-go))
       (progn
+        (require 'emms-playlist-mode)
         (require 'emms-browser)
         (require 'emms-setup)
         (require 'emms-tag-editor)
         (require 'emms-lyrics)
         (require 'url-util)
         (require 'emms-playlist-mode)
-        (require 'emms-info-oggperl)
-        (require 'emms-info-mp3info)
-        (emms-standard)
+        (emms-minimalistic)
         (setq emms-player-list
               (list 'emms-player-mplayer-playlist 'emms-player-mplayer)))))
 
@@ -80,7 +79,6 @@
 
 (setq
  emms-info-asynchronously nil
- emms-info-functions '(emms-info-oggperl emms-info-mp3info)
  emms-lyrics-scroll-p nil
  emms-playing-time-display-format ""
  later-do-interval 5)


 

don't synchronize .w3m, history is in .emacs-w3m

File modified: bin/start.sh bin/stop.sh

Change274 at Tue Apr 20 16:18:02 2010 +0200 by "Ivan Kanis"

diff -r 11859aa774ff -r d980cc58ce4e bin/stop.sh
--- a/bin/stop.sh	Tue Apr 20 13:56:55 2010 +0200
+++ b/bin/stop.sh	Tue Apr 20 16:18:02 2010 +0200
@@ -17,9 +17,6 @@
     check "error pulling mercurial"
 fi
 
-rsync -a ~/.w3m/ ${portable_dir}/keep/w3m 
-check "failed to synchronize w3m directory"
-
 sudo halt
 
 # Local Variables:


 

fix typo

File modified: conf/quotes.french

Change273 at Tue Apr 20 13:56:55 2010 +0200 by "Ivan Kanis"

diff -r be9d4754f0e6 -r 11859aa774ff conf/quotes.french
--- a/conf/quotes.french	Tue Apr 20 09:45:28 2010 +0200
+++ b/conf/quotes.french	Tue Apr 20 13:56:55 2010 +0200
@@ -625,7 +625,7 @@
 On doit penser sa vie, afin de la vivre toute vraiment, et vivre sa
 pensée, afin de parvenir à penser toute sa vie.
     -- Édouard le Roy
-% 
+%
 On ne reçoit pas la sagesse, il faut la découvrir soi-même, après un
 trajet que personne ne peut faire pour nous, ne peut nous épargner.
     -- Marcel Proust


 

fix auctex subdir in windows 7

File modified: lisp/auctex/Makefile

Change272 at Tue Apr 20 09:45:28 2010 +0200 by "Ivan Kanis"

diff -r a33a11d5fcf6 -r be9d4754f0e6 lisp/auctex/Makefile
--- a/lisp/auctex/Makefile	Mon Apr 19 22:28:24 2010 +0200
+++ b/lisp/auctex/Makefile	Tue Apr 20 09:45:28 2010 +0200
@@ -26,7 +26,7 @@
 INSTALLDIR = ${HOME}/build/lisp/auctex
 
 all: $(ELC) $(AUTOFILE).elc
-	cd style && ${MAKE} ${MAKECMDGOALS}
+	${MAKE} -C style ${MAKECMDGOALS}
 
 install: all
 clean: all


 

start playlist when launching emms

File modified: lisp/emacs.d/ivan-emms.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-keymap.el

Change271 at Mon Apr 19 22:28:24 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r a19c4a77f099 -r a33a11d5fcf6 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Mon Apr 19 22:03:44 2010 +0200
+++ b/lisp/emacs.d/ivan-keymap.el	Mon Apr 19 22:28:24 2010 +0200
@@ -90,7 +90,6 @@
  "j" 'ivan-fun-external-jump
  "k" 'ivan-org-kb
  "l" 'org-store-link
- "m" 'ivan-emms
  "n" 'ivan-gnus
  "o" 'display-time-world
  "p" 'pr-ps-fast-fire
@@ -132,12 +131,11 @@
 ;;; Music player
 (ivan-keymap-prefix
  ivan-keymap-player-map
+ "a" 'ivan-emms-add-and-shuffle
  "b" 'emms-previous
  "i" 'ivan-emms-message-info
- "r" 'ivan-fun-play-rewind
- "f" 'ivan-fun-play-forward
  "n" 'emms-next
- "p" 'ivan-fun-play-pause
+ "p" 'emms-pause
  "s" 'ivan-emms-toggle-shuffle)
 
 ;;; Global keymap


 

put w3m data on portable disk

File modified: bin/setenv.sh bin/start.sh bin/stop.sh

Change270 at Mon Apr 19 22:03:44 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 464efc570695 -r a19c4a77f099 bin/stop.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/stop.sh	Mon Apr 19 22:03:44 2010 +0200
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+portable_dir=/media/Iomega_HDD
+
+check () {
+    if test $? -ne 0
+    then
+	printf "$1\n"
+	exit 1
+    fi
+}
+
+if test -d ${portable_dir}/keep
+then
+    cd ${HOME}/hg
+    hg push ${portable_dir}/keep/hg
+    check "error pulling mercurial"
+fi
+
+rsync -a ~/.w3m/ ${portable_dir}/keep/w3m 
+check "failed to synchronize w3m directory"
+
+sudo halt
+
+# Local Variables:
+# compile-command: "sh stop.sh"
+# End:
+
+# Copyright (C) 2010 Ivan Kanis
+# Author: Ivan Kanis
+#
+# This program is free software ; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation ; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
...
 

add excel and word script

File modified: bin/excel.sh bin/setenv.sh bin/word.sh

Change269 at Mon Apr 19 22:02:37 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 1157fb291abb -r 464efc570695 bin/word.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/word.sh	Mon Apr 19 22:02:37 2010 +0200
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+wine "C:\office\Office\Winword.exe" $*
+
+# Copyright (C) 2010 Ivan Kanis
+# Author: Ivan Kanis
+#
+# This program is free software ; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation ; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY ; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program ; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA


 

update winpack

File modified: website/Makefile website/patch/xscreensaver.patch

Change268 at Sat Apr 17 12:38:34 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r b48e9ca85b7e -r 1157fb291abb website/patch/xscreensaver.patch
--- a/website/patch/xscreensaver.patch	Fri Apr 16 20:16:09 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,83 +0,0 @@
-diff -aur xscreensaver-4.16/driver/timers.c xscreensaver-ivan/driver/timers.c
---- xscreensaver-4.16/driver/timers.c	2004-05-06 05:12:50.000000000 +0100
-+++ xscreensaver-ivan/driver/timers.c	2005-01-13 12:28:01.000000000 +0000
-@@ -539,6 +539,42 @@
-   memset (buf, 0, sizeof(buf));
- }
- 
-+/* check if the mouse has been bumped */
-+# undef ABS
-+# define ABS(x)((x)<0?-(x):(x))
-+int check_bump(saver_info *si, XEvent event)
-+{
-+    int rv=0;
-+
-+    if (event.xany.type == MotionNotify) {
-+        saver_preferences *p = &si->prefs;
-+        if (si->check_bump_x == -1) {
-+            /* we don't have previous coordinate yet so just eat 
-+               up this event, there will be more */
-+            rv = 1;
-+        } else {
-+            if (p->verbose_p) {
-+                fprintf (stderr, "mouse displacement (%d, %d)\n",
-+                         ABS(si->check_bump_x - event.xmotion.x_root),
-+                         ABS(si->check_bump_y - event.xmotion.y_root));
-+            }
-+            
-+            if (ABS(si->check_bump_x - event.xmotion.x_root) <= 1 &&
-+                ABS(si->check_bump_y - event.xmotion.y_root) <= 1) {
-+                if (p->verbose_p) {
-+                    fprintf (stderr, "%s %s",
-+                             blurb(), "mouse bump detected\n");
-+                }
-+                rv = 1;
-+            }
-+        }
-+        si->check_bump_x = event.xmotion.x_root;
...
 

configuration to merge with ediff

File modified: conf/hgrc

Change267 at Fri Apr 16 20:16:09 2010 +0200 by Ivan Kanis <ivan@tao>

diff -r 76a1e98f46cc -r b48e9ca85b7e conf/hgrc
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/conf/hgrc	Fri Apr 16 20:16:09 2010 +0200
@@ -0,0 +1,6 @@
+[ui]
+username = Ivan Kanis <ivan@tao>
+
+[merge-tools]
+emacs.args = -q --eval "(ediff-merge-with-ancestor \"$local\" \"$other\" \"$base\" nil \"$output\")"
+


 

merge

File modified:

Change266 at Fri Apr 16 14:50:49 2010 +0200 by bob

diff -r 2092b9e035da -r 76a1e98f46cc lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Fri Apr 16 14:10:16 2010 +0200
+++ b/lisp/emacs.d/ivan-message.el	Fri Apr 16 14:50:49 2010 +0200
@@ -29,15 +29,6 @@
 (defvar ivan-message-map nil
   "Keymap to message functions.")
 
-(defun ivan-message-add-from ()
-  "Set the from address in a buffer local variable."
-  (if ivan-gnus-reply-from
-      (progn
-        (make-local-variable 'ivan-gnus-reply-from)
-        (setq-default ivan-gnus-reply-from nil))))
-
-(add-hook 'message-setup-hook 'ivan-message-add-from)
-
 (defun ivan-message-mml-attach-file ()
   (interactive)
   (let* ((file (mml-minibuffer-read-file "Attach file: "))


 

fix file not opeing in unicode under windows

File modified: lisp/emacs.d/ivan-windows.el

Change265 at Fri Apr 16 14:10:16 2010 +0200 by bob

diff -r 78a5bc8d3a67 -r 2092b9e035da lisp/emacs.d/ivan-windows.el
--- a/lisp/emacs.d/ivan-windows.el	Fri Apr 09 10:04:05 2010 +0200
+++ b/lisp/emacs.d/ivan-windows.el	Fri Apr 16 14:10:16 2010 +0200
@@ -11,9 +11,11 @@
 ;;; Code:
 
 (if (eq window-system 'w32)
-    (setq
-     find-program (concat (getenv "WINPACK") "\\gnuwin32\\bin\\find")
-     grep-find-use-xargs 'exec))
+    (progn
+      (setq
+       find-program (concat (getenv "WINPACK") "\\gnuwin32\\bin\\find")
+       grep-find-use-xargs 'exec)
+      (prefer-coding-system 'utf-8)))
 
 ;; Copyright (C) 2008 Ivan Kanis
 ;; Author: Ivan Kanis


 

gnus fix busted reply

File modified: lisp/emacs.d/ivan-gnus.el lisp/emacs.d/ivan-message.el

Change264 at Sun Apr 11 20:09:19 2010 +0200 by squeeze@tao

diff -r 78a5bc8d3a67 -r eedca23110e3 lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Fri Apr 09 10:04:05 2010 +0200
+++ b/lisp/emacs.d/ivan-message.el	Sun Apr 11 20:09:19 2010 +0200
@@ -29,15 +29,6 @@
 (defvar ivan-message-map nil
   "Keymap to message functions.")
 
-(defun ivan-message-add-from ()
-  "Set the from address in a buffer local variable."
-  (if ivan-gnus-reply-from
-      (progn
-        (make-local-variable 'ivan-gnus-reply-from)
-        (setq-default ivan-gnus-reply-from nil))))
-
-(add-hook 'message-setup-hook 'ivan-message-add-from)
-
 (defun ivan-message-mml-attach-file ()
   (interactive)
   (let* ((file (mml-minibuffer-read-file "Attach file: "))


 

merge

File modified: info/sicp.texi

Change263 at Fri Apr 09 10:04:05 2010 +0200 by bob

diff -r 3e3b0977c965 -r 78a5bc8d3a67 lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Fri Apr 09 10:00:29 2010 +0200
+++ b/lisp/emacs.d/ivan-message.el	Fri Apr 09 10:04:05 2010 +0200
@@ -21,6 +21,7 @@
   (require 'ivan-bbdb)
   (require 'ivan-english)
   (require 'ivan-french)
+  (require 'ivan-gnus)
   (require 'ivan-japanese)
   (require 'message)
   (defvar match-recs nil))
@@ -28,6 +29,15 @@
 (defvar ivan-message-map nil
   "Keymap to message functions.")
 
+(defun ivan-message-add-from ()
+  "Set the from address in a buffer local variable."
+  (if ivan-gnus-reply-from
+      (progn
+        (make-local-variable 'ivan-gnus-reply-from)
+        (setq-default ivan-gnus-reply-from nil))))
+
+(add-hook 'message-setup-hook 'ivan-message-add-from)
+
 (defun ivan-message-mml-attach-file ()
   (interactive)
   (let* ((file (mml-minibuffer-read-file "Attach file: "))


 

rattle through the windows drives to find private.el

File modified: lisp/emacs.d/init.el

Change262 at Fri Apr 09 10:00:29 2010 +0200 by bob

diff -r e427fa538f94 -r 3e3b0977c965 lisp/emacs.d/init.el
--- a/lisp/emacs.d/init.el	Fri Mar 19 21:11:19 2010 +0100
+++ b/lisp/emacs.d/init.el	Fri Apr 09 10:00:29 2010 +0200
@@ -14,10 +14,23 @@
 (require 'ivan-load)
 
 ;; Set local stuff, variables, mail and authentication
-(or (ivan-load "~/conf/private.el")
-    (setq
-     user-full-name ""
-     mail-host-address ""))
+(or
+ (ivan-load
+  (if (eq window-system 'w32)
+      (let ((drive ?a) file)
+        (while
+            (progn
+              (setq drive (1+ drive))
+              (setq file (format "%c:/keep/private.el" drive))
+              (and (< drive ?z)
+                   (not (file-exists-p file)))))
+        (if (not (file-exists-p file))
+            (setq file nil))
+        file)
+    "~/local/private.el"))
+ (setq
+  user-full-name ""
+  mail-host-address ""))
 
 ;;; Load split up configuration
 (ivan-load '(
@@ -89,7 +102,7 @@
 
 ;; Copyright (C) 2006  Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by

...
 

clean up old cruft in gnus configuration

File modified: lisp/emacs.d/ivan-gnus.el

Change261 at Thu Apr 08 20:18:07 2010 +0200 by squeeze@tao

diff -r 403048dc96f4 -r 6d3a27688e18 lisp/emacs.d/ivan-gnus.el
--- a/lisp/emacs.d/ivan-gnus.el	Sun Mar 28 17:06:10 2010 +0200
+++ b/lisp/emacs.d/ivan-gnus.el	Thu Apr 08 20:18:07 2010 +0200
@@ -54,12 +54,6 @@
                            (summary .50 point)
                            (article 1.0))))
 
-      ;; Auto filter jobs
-      (add-to-list 'gnus-treatment-function-alist
-                   '(ivan-gnus-treat-job ivan-gnus-filter-job))
-      (add-to-list 'gnus-treatment-function-alist
-                   '(ivan-gnus-treat-report ivan-gnus-filter-report))
-
       ;; prevent moving cursor to colon in summary
       (defalias 'gnus-summary-position-point 'beginning-of-line)
 
@@ -94,12 +88,6 @@
 
 (add-hook 'gnus-article-mode-hook 'ivan-gnus-article-mode)
 
-(defun ivan-gnus-filter-job ()
-  (gnus-summary-pipe-message "job-filter.py"))
-
-(defun ivan-gnus-filter-report ()
-  (gnus-summary-pipe-message "report-filter.py"))
-
 (defun ivan-gnus-get-to ()
   "Return string of the mail recipient."
   ;; make sure the article buffer exists
@@ -214,15 +202,10 @@
                       ":" bbdb/gnus-show-sender
                       ";" bbdb/gnus-edit-notes
                       "<delete>" gnus-summary-delete-article
-                      "C" gnus-summary-catchup-and-exit
                       "R" ivan-gnus-reply-with-original
-                      "S" gnus-summary-score-map
                       "T" ivan-gnus-reply-top-wide
-                      "V" ivan-gnus-reply-wide-with-original
                       "c" ivan-gnus-catchup-and-goto-next-group
                       "h" gnus-summary-toggle-header
-                      "j" next-line
...
 

add wrappers to all reply functions to get the recipient address

fix bugs in function that grabs the recipient address

File modified: lisp/emacs.d/ivan-gnus.el

Change260 at Sun Mar 28 17:06:10 2010 +0200 by squeeze@tao

diff -r 5d8cda94feeb -r 403048dc96f4 lisp/emacs.d/ivan-gnus.el
--- a/lisp/emacs.d/ivan-gnus.el	Sat Mar 27 19:14:37 2010 +0100
+++ b/lisp/emacs.d/ivan-gnus.el	Sun Mar 28 17:06:10 2010 +0200
@@ -102,21 +102,22 @@
 
 (defun ivan-gnus-get-to ()
   "Return string of the mail recipient."
-  (interactive)
-  (let (beg end)
+  ;; make sure the article buffer exists
+  (if (eq major-mode 'gnus-summary-mode)
+      (gnus-summary-goto-article gnus-newsgroup-begin))
+  (let ((continue t)
+        (search (concat "@" mail-host-address))
+        line)
     (with-current-buffer gnus-article-buffer
       (save-excursion
         (gnus-summary-toggle-header 1)
         (goto-char (point-min))
-        ;; no need to error check, it seems to be always there
-        (re-search-forward "\tfor ")
-        (setq beg (point))
-        (if (re-search-forward "@")
-            (progn
-              (setq end (point))
-              (if (re-search-forward mail-host-address nil t)
-                  (setq ivan-gnus-reply-from
-                        (buffer-substring-no-properties beg (1- end))))))
+        (while (and (re-search-forward search nil t) continue)
+          (setq line (buffer-substring-no-properties
+                      (line-beginning-position) (point)))
+          (if (string-match "\tfor \\(.*\\)@" line)
+              (setq ivan-gnus-reply-from (match-string 1 line)
+                    continue nil)))
         (gnus-summary-toggle-header -1)))))
 
 (defun ivan-gnus-group-get-news ()
@@ -214,16 +215,18 @@
                       ";" bbdb/gnus-edit-notes
                       "<delete>" gnus-summary-delete-article
                       "C" gnus-summary-catchup-and-exit
...
 

fix compilation warning

File modified: lisp/emacs.d/ivan-message.el

Change259 at Sat Mar 27 19:14:37 2010 +0100 by squeeze@tao

diff -r fafa34e9f30a -r 5d8cda94feeb lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Sat Mar 27 19:12:56 2010 +0100
+++ b/lisp/emacs.d/ivan-message.el	Sat Mar 27 19:14:37 2010 +0100
@@ -21,6 +21,7 @@
   (require 'ivan-bbdb)
   (require 'ivan-english)
   (require 'ivan-french)
+  (require 'ivan-gnus)
   (require 'ivan-japanese)
   (require 'message)
   (defvar match-recs nil))


 

snarf to address from a mail and put it on the reply

File modified: lisp/emacs.d/ivan-gnus.el lisp/emacs.d/ivan-message.el

Change258 at Sat Mar 27 19:12:56 2010 +0100 by squeeze@tao

diff -r 97e27d05c8fc -r fafa34e9f30a lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Sat Mar 27 09:36:57 2010 +0100
+++ b/lisp/emacs.d/ivan-message.el	Sat Mar 27 19:12:56 2010 +0100
@@ -28,6 +28,15 @@
 (defvar ivan-message-map nil
   "Keymap to message functions.")
 
+(defun ivan-message-add-from ()
+  "Set the from address in a buffer local variable."
+  (if ivan-gnus-reply-from
+      (progn
+        (make-local-variable 'ivan-gnus-reply-from)
+        (setq-default ivan-gnus-reply-from nil))))
+
+(add-hook 'message-setup-hook 'ivan-message-add-from)
+
 (defun ivan-message-mml-attach-file ()
   (interactive)
   (let* ((file (mml-minibuffer-read-file "Attach file: "))


 

add rename buffer and file function

File modified: lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-keymap.el

Change257 at Sat Mar 27 09:36:57 2010 +0100 by squeeze@tao

diff -r a4f202c4649c -r 97e27d05c8fc lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Thu Mar 25 06:01:29 2010 +0100
+++ b/lisp/emacs.d/ivan-keymap.el	Sat Mar 27 09:36:57 2010 +0100
@@ -117,6 +117,7 @@
  "o" 'outline-mode-prefix-map
  "p" 'ivan-keymap-player-map
  "r" 'query-replace
+ "R" 'ivan-fun-rename-file-and-buffer
  "s" 'ivan-xcscope-key-map
  "u" 'font-lock-fontify-buffer
  "v" 'ediff-revision
@@ -190,7 +191,6 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

fix sicp dependence

File modified: info/Makefile info/sicp.texi info/sicp.texi2

Change256 at Thu Mar 25 06:01:29 2010 +0100 by squeeze@tao

diff -r e427fa538f94 -r a4f202c4649c info/sicp.texi2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/info/sicp.texi2	Thu Mar 25 06:01:29 2010 +0100
@@ -0,0 +1,34178 @@
+\input texinfo
+@comment             **********************************************************
+@setfilename         sicp
+@settitle            Structure and Interpretation of Computer Programs, 2e
+@comment             Unofficial Texinfo Format
+@comment
+@set utfversion      2.neilvandyke4
+@set utfversiondate  January 10, 2007
+@comment
+@comment             This is a Texinfo file.  To convert it to Info hypertext
+@comment             format, you will need the `makeinfo' program from the GNU
+@comment             Texinfo package.  For more information about this file,
+@comment             see the text under `@node UTF' below
+@comment             
+@comment             Various versions of sicp.texi and preformatted sicp.info
+@comment             can be found at the following Web pages:
+@comment             
+@comment                 http://www.neilvandyke.org/sicp-texi/
+@comment                 [add your own here]
+@comment             
+@comment             **********************************************************
+
+@comment HISTORY:
+@comment
+@comment * Version 1 (unknown date) by Lytha Ayth.
+@comment
+@comment * Version 2 (April 20, 2001) by Lytha Ayth.
+@comment
+@comment * Version 2.nwv1 (March 11, 2002) by Neil W. Van Dyke.
+@comment   Cosmetic change to heading in Info format, and comment changes.
+@comment 
+@comment * Version 2.neilvandyke1 (February 10, 2003) by Neil W. Van Dyke
+@comment   Correction to Exercise 1.39 formula, spotted by Steve VanDevender.
+@comment   Added URL of Abelson and Sussman video lectures.
+@comment
+@comment * Version 2.neilvandyke2 (unreleased)
+@comment
...
 

ignore archive dir, it's generated

File modified: .hgignore

Change255 at Fri Mar 19 21:11:19 2010 +0100 by squeeze@tao

diff -r c65fb9c535a4 -r e427fa538f94 .hgignore
--- a/.hgignore	Fri Mar 19 21:08:44 2010 +0100
+++ b/.hgignore	Fri Mar 19 21:11:19 2010 +0100
@@ -34,3 +34,4 @@
 .\#*
 hg2rss.stamp
 *.cache
+web/archive


 

add blog archive to muse projects

File modified: lisp/emacs.d/ivan-muse.el

Change254 at Fri Mar 19 21:08:44 2010 +0100 by squeeze@tao

diff -r d89df9d42836 -r c65fb9c535a4 lisp/emacs.d/ivan-muse.el
--- a/lisp/emacs.d/ivan-muse.el	Fri Mar 19 21:07:38 2010 +0100
+++ b/lisp/emacs.d/ivan-muse.el	Fri Mar 19 21:08:44 2010 +0100
@@ -36,7 +36,7 @@
 (defun ivan-muse-publish ()
   (interactive)
   (ivan-face-set-background-foreground "#b9babd" "black" t)
-  (mapc 'muse-project-publish '("website" "blog-rss" "blog-html"))
+  (mapc 'muse-project-publish '("website" "archive" "blog-rss" "blog-html"))
   (ivan-face-set-background-foreground "black" "white" nil))
 
 (defun ivan-muse-quote ()
@@ -49,6 +49,8 @@
  muse-project-alist
  '(("website" ("~/hg/web")
     (:base "html" :path "~/web"))
+   ("archive" ("~/hg/web/archive")
+    (:base "html" :path "~/web"))
    ("blog-rss" ("~/hg/web/blog")
     (:base "journal-rss" :path "~/web"))
    ("blog-html" ("~/hg/web/blog")


 

fix target dir

File modified: bin/updateweb.py

Change253 at Fri Mar 19 21:07:38 2010 +0100 by squeeze@tao

diff -r 9cadc43d92e7 -r d89df9d42836 bin/updateweb.py
--- a/bin/updateweb.py	Fri Mar 19 10:48:11 2010 +0100
+++ b/bin/updateweb.py	Fri Mar 19 21:07:38 2010 +0100
@@ -22,7 +22,7 @@
 import os
 
 # muse generates a bunch of unneede xml files, just remove them
-web_dir = os.path.expanduser("~/web")
+web_dir = os.path.expanduser("~/web/")
 files = os.listdir(web_dir)
 
 # build tar ball
@@ -34,8 +34,7 @@
 rsync = 'rsync -rvz --times '
 for dest in ['ivan@kanis.fr:~/www/', 'ivan@minimal.cx:~/htdocs/']:
     os.system( rsync + '--copy-links --copy-dirlinks \
-    --exclude-from $HOME/hg/.hgignore \
-    ~/build/kanis.fr/ ' + dest)
+    --exclude-from $HOME/hg/.hgignore ' + web_dir + " "  + dest)
 
 for dir in ['ivan@kanis.fr:~/exim-virtual',
             'ivan@kanis.fr:/etc/_darcs']:


 

update make file and update script with new location

File modified: Makefile bin/updateweb.py

Change252 at Fri Mar 19 10:48:11 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 9682b7a11141 -r 9cadc43d92e7 bin/updateweb.py
--- a/bin/updateweb.py	Thu Mar 18 22:16:16 2010 +0100
+++ b/bin/updateweb.py	Fri Mar 19 10:48:11 2010 +0100
@@ -22,12 +22,8 @@
 import os
 
 # muse generates a bunch of unneede xml files, just remove them
-web_dir = os.path.expanduser("~/build/kanis.fr")
+web_dir = os.path.expanduser("~/web")
 files = os.listdir(web_dir)
-for f in files:
-    if f[-3:] == "xml":
-        if not f in  ["blog.xml", "blog-fr.xml", "blog-emacs.xml"]:
-            os.remove(web_dir + "/" +f)
 
 # build tar ball
 ret = os.system("~/hg/svf/release.sh")


 

muse fix unknown page link so that they end with .html

File modified: lisp/emacs.d/ivan-muse.el lisp/muse/muse-publish.el

Change251 at Thu Mar 18 22:16:16 2010 +0100 by squeeze@tao

diff -r fcce2a8066ef -r 9682b7a11141 lisp/muse/muse-publish.el
--- a/lisp/muse/muse-publish.el	Thu Mar 18 15:30:17 2010 +0100
+++ b/lisp/muse/muse-publish.el	Thu Mar 18 22:16:16 2010 +0100
@@ -750,15 +750,10 @@
 
 (defsubst muse-publish-link-page (page)
   "Turn PAGE into a URL.
-
 This is called by `muse-publish-classify-url' to figure out what
 a link to another file or Muse page should look like.
-
-If muse-project.el is loaded, call `muse-project-link-page' for this.
-Otherwise, call `muse-publish-link-file'."
-  (if (fboundp 'muse-project-link-page)
-      (muse-project-link-page page)
-    (muse-publish-link-file page)))
+This the KISS (Keep It Simple Stupid) version -- ipk"
+  (concat page ".html"))
 
 (defmacro muse-publish-ensure-block (beg &optional end)
   "Ensure that block-level markup at BEG is published with at least one


 

move resume up a notch

File modified: resume/Makefile resume/XMLSchema.dtd resume/cv.pl resume/datatypes.dtd resume/docbook.pl resume/docbook.tmpl resume/en/dummy resume/fr/dummy resume/getlang.pl resume/getlang.sed resume/html.pl resume/html.tmpl resume/latex.pl resume/latex.tmpl resume/makeopt.pl resume/muse.pl resume/muse.tmpl resume/pdf.pl resume/resume.xml resume/resume.xsd resume/rtf.pl resume/rtf.tmpl website/resume/Makefile website/resume/XMLSchema.dtd website/resume/cv.pl website/resume/datatypes.dtd website/resume/docbook.pl website/resume/docbook.tmpl website/resume/en/dummy website/resume/fr/dummy website/resume/getlang.pl website/resume/getlang.sed website/resume/html.pl website/resume/html.tmpl website/resume/latex.pl website/resume/latex.tmpl website/resume/makeopt.pl website/resume/mugshot.jpg website/resume/muse.pl website/resume/muse.tmpl website/resume/pdf.pl website/resume/resume.xml website/resume/resume.xsd website/resume/rtf.pl website/resume/rtf.tmpl

Change250 at Thu Mar 18 15:30:17 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 2fa5dacd0108 -r fcce2a8066ef website/resume/rtf.tmpl
--- a/website/resume/rtf.tmpl	Thu Mar 18 15:22:08 2010 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,123 +0,0 @@
-[%- spacing='' -%]
-[%- section='\pard\fi-1\li1\ri1\plain\f0\fs32\b\ul' -%]
-{\rtf1\ansi
-\ansicpg1252
-{\fonttbl
-{\f0\fswiss Helvetica;}
-{\f1\froman Times;}
-}
-{\info
-{\creatim \yr2003\mo9\dy8\hr18\min58\sec26}
-{\revtim \yr2003\mo9\dy8\hr22\min50\sec27}
-}
-\paperw11908\paperh16847\margl1296\margr1296\margt1727\margb1727
-\ftnbj\aenddoc\ftnrstcont\aftnrstcont\ftnnar\aftnnrlc
-\sectd\headery863\footery863
-\pard\fi-1\li1\ri1\sa226\qc\plain\f0\fs48\b [%- intro.title -%]\par
-{\trowd\trgaph2\trkeep
-\cellx2300
-\cellx6800
-\cellx9100
-\pard\intbl\plain\f1 [%- intro.address1 -%]\par
-[% intro.address2 %]\par
-[%- IF intro.address3 -%]\par
-
-[%- intro.address3 -%]\par
-
-[%- END -%]
-[%- IF intro.country -%]
-
-[% intro.country %]\par
-
-[%- END -%]
-[% intro.age %]\cell
-[%- FOREACH paragraph = highlight.p %]
-- [% paragraph.content %][%- IF loop.last -%]\cell[%- ELSE -%]\par[%- END %]
-[%- END %]
-\pard\intbl\fi-1\li1\ri1\qr\plain\f1  [%- intro.email -%]\par
...
 

ite to hg/web and build directory to ~/webnter commit message. Lines beginning with 'HG:' are removed.

File modified: lisp/emacs.d/ivan-compile.el lisp/emacs.d/ivan-keymap.el lisp/emacs.d/ivan-muse.el website/kanis.fr/1.png website/kanis.fr/2.png website/kanis.fr/3.png website/kanis.fr/4.png website/kanis.fr/6.png website/kanis.fr/7.png website/kanis.fr/8.png website/kanis.fr/9.png website/kanis.fr/Makefile website/kanis.fr/appartment-bath-tub.jpg website/kanis.fr/appartment-bathroom.jpg website/kanis.fr/appartment-bedroom-1.jpg website/kanis.fr/appartment-bedroom-2.jpg website/kanis.fr/appartment-entrance.jpg website/kanis.fr/appartment-kitchen-1.jpg website/kanis.fr/appartment-kitchen.jpg website/kanis.fr/appartment-living-room.jpg website/kanis.fr/appartment.muse website/kanis.fr/b.png website/kanis.fr/background-line.jpg website/kanis.fr/background-line.xcf website/kanis.fr/bbdb-picture.png website/kanis.fr/bishop-palace.muse website/kanis.fr/bishop_castle_tuna.jpg website/kanis.fr/bishop_palace.jpg website/kanis.fr/blog/blog-emacs.muse website/kanis.fr/blog/blog-fr.muse website/kanis.fr/blog/blog.muse website/kanis.fr/c.png website/kanis.fr/camping_in_inverness.jpg website/kanis.fr/camster-cairns.muse website/kanis.fr/camster_big_cairn.jpg website/kanis.fr/camster_cairns_chamber.jpg website/kanis.fr/camster_cairns_overview.jpg website/kanis.fr/camster_cairns_tuna_going_in.jpg website/kanis.fr/camster_cairns_tuna_looking_back.jpg website/kanis.fr/camster_cairns_tunnel.jpg website/kanis.fr/castle_simon.jpg website/kanis.fr/cdinsert.muse website/kanis.fr/cdinserts.jpg website/kanis.fr/clava_cairns.muse website/kanis.fr/clava_cairns_margot_and_tuna_going_around_stone.jpg website/kanis.fr/clava_cairns_margot_inside.jpg website/kanis.fr/clava_cairns_pox_mark_rock.jpg website/kanis.fr/clava_cairns_standing_stone.jpg website/kanis.fr/clava_cairns_tuna_running_in.jpg website/kanis.fr/clava_cairns_view_of_both_cairns.jpg website/kanis.fr/clava_cairns_view_of_one_cairn.jpg website/kanis.fr/conversion.png website/kanis.fr/copy-dist.py website/kanis.fr/crossover.png website/kanis.fr/dad.muse website/kanis.fr/dad_leaning_on_gate.jpg website/kanis.fr/daily-mirror-bush.jpg website/kanis.fr/dbtomcat.png website/kanis.fr/doom.png website/kanis.fr/doomrl.png website/kanis.fr/download.muse website/kanis.fr/emacs-erc-lookup.png website/kanis.fr/emacs-gradient-face.png website/kanis.fr/emacs.muse website/kanis.fr/emptydiv.pl website/kanis.fr/feed-icon-14x14.png website/kanis.fr/ferry.muse website/kanis.fr/ferry_margot_tuna.jpg website/kanis.fr/game-en.muse website/kanis.fr/game-fr.muse website/kanis.fr/hadrian-wall.muse website/kanis.fr/hadrian_wall_crag_ivan.jpg website/kanis.fr/hadrian_wall_detail.jpg website/kanis.fr/hadrian_wall_foot_and_mouth.jpg website/kanis.fr/hadrian_wall_housestead_fort_bath.jpg website/kanis.fr/hadrian_wall_view.jpg website/kanis.fr/helixbbc.png website/kanis.fr/hg2rss.py website/kanis.fr/highland-road.muse website/kanis.fr/highland_road.jpg website/kanis.fr/hill.muse website/kanis.fr/ik16.png website/kanis.fr/ik16.xcf website/kanis.fr/index.muse website/kanis.fr/input.png website/kanis.fr/inverness-camping.muse website/kanis.fr/kanis.css website/kanis.fr/kirkwall-tombstone.muse website/kanis.fr/le-chat-1.gif website/kanis.fr/le-chat-2.gif website/kanis.fr/le-chat-3.gif website/kanis.fr/le-chat-4.gif website/kanis.fr/le-chat-5.gif website/kanis.fr/le-chat-6.gif website/kanis.fr/le-chat-7.gif website/kanis.fr/le-chat.muse website/kanis.fr/lookup.png website/kanis.fr/lothian_ivan_relaxing.jpg website/kanis.fr/make.common website/kanis.fr/make.var website/kanis.fr/margot.muse website/kanis.fr/mugshot.jpg website/kanis.fr/multiboot-with-grub.muse website/kanis.fr/nterm-aptitude.png website/kanis.fr/nterm-double.png website/kanis.fr/nterm.muse website/kanis.fr/nterm.png website/kanis.fr/nxml.png website/kanis.fr/old-man-of-hoy.muse website/kanis.fr/old_man_of_hoy.jpg website/kanis.fr/picnic_dad.jpg website/kanis.fr/pocketkanji-0.4.11.zip website/kanis.fr/pocketkanji-manual.muse website/kanis.fr/pocketkanji.muse website/kanis.fr/pocketkanji.png website/kanis.fr/portfolio.muse website/kanis.fr/projects.muse website/kanis.fr/publish.el website/kanis.fr/radio.muse website/kanis.fr/ring-of-brogar.muse website/kanis.fr/ring-of-stenness.muse website/kanis.fr/ring_of_brogar_2stones_lake.jpg website/kanis.fr/ring_of_brogar_5stones.jpg website/kanis.fr/ring_of_brogar_9stones_and_fallen_stone.jpg website/kanis.fr/ring_of_brogar_mound.jpg website/kanis.fr/ring_of_brogar_overview.jpg website/kanis.fr/ring_of_brogar_swirley_stone.jpg website/kanis.fr/ring_of_brogar_zigzag_stone.jpg website/kanis.fr/ring_of_stennes_lake.jpg website/kanis.fr/ring_of_stenness_ivan.jpg website/kanis.fr/ring_of_stenness_margot_tuna.jpg website/kanis.fr/ring_of_stenness_overview.jpg website/kanis.fr/ring_of_stenness_tuna_next_to_big_stone.jpg website/kanis.fr/ring_of_stenness_tuna_on_margot.jpg website/kanis.fr/robots.txt website/kanis.fr/samye-ling.muse website/kanis.fr/samye_ling_dad.jpg website/kanis.fr/samye_ling_ivan.jpg website/kanis.fr/samye_ling_temple.jpg website/kanis.fr/samye_ling_water_goddess.jpg website/kanis.fr/scotland-trip.muse website/kanis.fr/sitemap.txt website/kanis.fr/small-world.png website/kanis.fr/small-world.swf website/kanis.fr/sushi-go-round.png website/kanis.fr/sushi-go-round.swf website/kanis.fr/svf-example1.png website/kanis.fr/svf-example2.png website/kanis.fr/svf-example3.png website/kanis.fr/svf-example4.png website/kanis.fr/svf.muse website/kanis.fr/thurso.muse website/kanis.fr/thurso_beach.jpg website/kanis.fr/thurso_ivan_tuna_lighthouse.jpg website/kanis.fr/thurso_margot_tuna_ligthouse.jpg website/kanis.fr/tidy-config website/kanis.fr/tombstone.jpg website/kanis.fr/tuna.muse website/kanis.fr/tuna1.jpg website/kanis.fr/tuna2.jpg website/kanis.fr/tuna_eating_avocado.jpg website/kanis.fr/tuna_handing_grass_to_horses.jpg website/kanis.fr/tuna_holding_grass.jpg website/kanis.fr/tunamargot.jpg website/kanis.fr/winpack.muse website/kanis.fr/x.png website/kanis.fr/y.png

Change249 at Thu Mar 18 15:22:08 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 10c123a3a68c -r 2fa5dacd0108 website/kanis.fr/y.png
Binary file website/kanis.fr/y.png has changed


 

move blogs into a separate directory

File modified: lisp/emacs.d/ivan-muse.el website/kanis.fr/blog-emacs.muse website/kanis.fr/blog-fr.muse website/kanis.fr/blog.muse website/kanis.fr/blog/blog-emacs.muse website/kanis.fr/blog/blog-fr.muse website/kanis.fr/blog/blog.muse

Change248 at Thu Mar 18 15:15:46 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 0149c0787890 -r 10c123a3a68c website/kanis.fr/blog/blog.muse
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/website/kanis.fr/blog/blog.muse	Thu Mar 18 15:15:46 2010 +0100
@@ -0,0 +1,1439 @@
+#title English blog
+
+* 20100209 Thunderbird 3.0.1 TLS + SMTP broken
+
+What's wrong with the latest version of Thunderbird? It doesn't work
+with my server that uses STARTTLS. I generated a log file.
+
+<example>
+Send: EHLO patsy.makina-nantes.net
+Response: 250-kanis.fr Hello 179.240.204-77.rev.gaoland.net [77.204.240.179]
+Response: 250-SIZE 104857600
+Response: 250-PIPELINING
+Response: 250-STARTTLS
+Response: 250 HELP
+Send: QUIT
+</example>
+
+Well crap it should work. It did work on my father's Thunderbird a
+year ago . How annoying. So I told my client to use Pegasus Mail which
+doesn't look as pretty but it works.
+
+* 20091201 What's wrong with the swiss?
+
+A vote will forbid the construction of mosque. It's so silly, the
+words fail me...
+
+* 20091122: Page of fine games
+
+I have just added a page of [[game-en][flash games]] I like.
+
+* 20090117: Picture of the new appartment
+
+We have taken pictures of our brand new [[appartment]]. We will receive
+the keys next monday, after one more move I should finally settle.
+
+* 20080225: My blog is back online
+
...
 

fix typo

File modified: website/kanis.fr/blog-emacs.muse

Change247 at Thu Mar 18 15:11:56 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r f1fc5e5aa0cc -r 0149c0787890 website/kanis.fr/blog-emacs.muse
--- a/website/kanis.fr/blog-emacs.muse	Thu Mar 18 12:03:15 2010 +0100
+++ b/website/kanis.fr/blog-emacs.muse	Thu Mar 18 15:11:56 2010 +0100
@@ -1,6 +1,6 @@
 #title Emacs blog
 
-* 20091217 appointment implement variable warning time
+* 20091217: appointment implement variable warning time
 
 I use appointment with org. I find that a global time delay for each
 appointments is inconvenient. For example I need to be warned an hour
@@ -10,14 +10,14 @@
 
 Download the new [[http://kanis.fr/hg/lisp/misc/appt.el][appt]], take a look at the [[http://kanis.fr/124.html][patch]].
 
-* 20091129 nterm version 0.2 is out
+* 20091129: nterm version 0.2 is out
 
 The big new feature is double width and height font. Should you want
 to try it, download [[http://kanis.fr/hg/lisp/ivan/nterm.el][nterm.el]] and [[http://kanis.fr/hg/lisp/ivan/nterm-gr.el][nterm-gr.el]].
 
 [[nterm-double.png][nterm running double width and height font]]
 
-* 20090927 Picture for bbdb
+* 20090927: Picture for bbdb
 
 Bbdb (Big Brother DataBase) is the rolodex of emacs. I have added
 picture support so that you can see your contacts face.


 

add info of Structure and Interpratation of Computer Programs

File modified: .hgignore info/Makefile info/dir info/sicp.texi

Change246 at Thu Mar 18 12:03:15 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 1224dc8660d1 -r f1fc5e5aa0cc info/sicp.texi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/info/sicp.texi	Thu Mar 18 12:03:15 2010 +0100
@@ -0,0 +1,34178 @@
+\input texinfo
+@comment             **********************************************************
+@setfilename         sicp
+@settitle            Structure and Interpretation of Computer Programs, 2e
+@comment             Unofficial Texinfo Format
+@comment
+@set utfversion      2.neilvandyke4
+@set utfversiondate  January 10, 2007
+@comment
+@comment             This is a Texinfo file.  To convert it to Info hypertext
+@comment             format, you will need the `makeinfo' program from the GNU
+@comment             Texinfo package.  For more information about this file,
+@comment             see the text under `@node UTF' below
+@comment             
+@comment             Various versions of sicp.texi and preformatted sicp.info
+@comment             can be found at the following Web pages:
+@comment             
+@comment                 http://www.neilvandyke.org/sicp-texi/
+@comment                 [add your own here]
+@comment             
+@comment             **********************************************************
+
+@comment HISTORY:
+@comment
+@comment * Version 1 (unknown date) by Lytha Ayth.
+@comment
+@comment * Version 2 (April 20, 2001) by Lytha Ayth.
+@comment
+@comment * Version 2.nwv1 (March 11, 2002) by Neil W. Van Dyke.
+@comment   Cosmetic change to heading in Info format, and comment changes.
+@comment 
+@comment * Version 2.neilvandyke1 (February 10, 2003) by Neil W. Van Dyke
+@comment   Correction to Exercise 1.39 formula, spotted by Steve VanDevender.
+@comment   Added URL of Abelson and Sussman video lectures.
+@comment
+@comment * Version 2.neilvandyke2 (unreleased)
+@comment
...
 

move conf/private.el to local/private.el

File modified: lisp/emacs.d/ivan-var.el

Change245 at Thu Mar 18 11:51:26 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 30f7a117362d -r 1224dc8660d1 lisp/emacs.d/ivan-var.el
--- a/lisp/emacs.d/ivan-var.el	Wed Mar 17 19:29:16 2010 +0100
+++ b/lisp/emacs.d/ivan-var.el	Thu Mar 18 11:51:26 2010 +0100
@@ -73,7 +73,7 @@
   "Hook that runs in cc-mode")
 
 ;; Set local stuff, variables, mail and authentication
-(or (ivan-load "~/conf/private.el")
+(or (ivan-load "~/local/private.el")
     (setq
      user-full-name ""
      mail-host-address ""))


 

ivan-erc fix typo, placate compiler

File modified: lisp/emacs.d/ivan-erc.el

Change244 at Wed Mar 17 19:29:16 2010 +0100 by squeeze@tao

diff -r 6956f2cafe14 -r 30f7a117362d lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Wed Mar 17 19:27:39 2010 +0100
+++ b/lisp/emacs.d/ivan-erc.el	Wed Mar 17 19:29:16 2010 +0100
@@ -10,7 +10,8 @@
   (require 'erc-join)
   (require 'erc-match)
   (require 'erc-track)
-  (require 'garak))
+  (require 'garak)
+  (defun private-erc()))
 
 (defun ivan-erc ()
   "IRC entry point"
@@ -52,7 +53,7 @@
   (if (string= "#nihongo" (buffer-name))
       (ivan-japanese-input)))
 
-add-hook 'erc-connect-pre-hook 'ivan-erc-connect-pre)
+(add-hook 'erc-connect-pre-hook 'ivan-erc-connect-pre)
 (add-hook 'erc-join-hook 'ivan-erc-join)
 (add-hook 'erc-mode-hook 'ivan-erc-mode-hook)
 
@@ -117,7 +118,6 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

fix bashism

File modified: bin/setenv.sh

Change243 at Wed Mar 17 19:27:39 2010 +0100 by squeeze@tao

diff -r 49f42ae4a92e -r 6956f2cafe14 bin/setenv.sh
--- a/bin/setenv.sh	Wed Mar 17 17:48:25 2010 +0100
+++ b/bin/setenv.sh	Wed Mar 17 19:27:39 2010 +0100
@@ -4,7 +4,7 @@
 # input needle haystack
 match() {
     # backslash forward slash
-    if test X${VENDOR} = Xubuntu -o X${VENDOR} = Xdebian
+    if test X${BASH} = X
     then
         back=$(echo $1 | sed -e 's/\//\\\\\//g')
     else 


 

stuff copyright

File modified: info/dir info/make.texi

Change242 at Wed Mar 17 17:48:25 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r c296f45f3fa5 -r 49f42ae4a92e info/make.texi
--- a/info/make.texi	Wed Mar 17 17:45:37 2010 +0100
+++ b/info/make.texi	Wed Mar 17 17:48:25 2010 +0100
@@ -17,33 +17,6 @@
 @set ISBN 1-882114-83-5
 @c %**end of header
 
-@copying
-This file documents the GNU @code{make} utility, which determines
-automatically which pieces of a large program need to be recompiled,
-and issues the commands to recompile them.
-
-This is Edition @value{EDITION}, last updated @value{UPDATED},
-of @cite{The GNU Make Manual}, for GNU @code{make} version @value{VERSION}.
-
-Copyright @copyright{} 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
-1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-Free Software Foundation, Inc.
-
-@quotation
-Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
-any later version published by the Free Software Foundation; with no
-Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,''
-and with the Back-Cover Texts as in (a) below.  A copy of the
-license is included in the section entitled ``GNU Free Documentation
-License.''
-
-(a) The FSF's Back-Cover Text is: ``You have freedom to copy and modify
-this GNU Manual, like GNU software.  Copies published by the Free
-Software Foundation raise funds for GNU development.''
-@end quotation
-@end copying
-
 @c finalout
 
 @c ISPELL CHECK: done, 10 June 1993 --roland
@@ -83,7 +56,6 @@
 @node Top, Overview, (dir), (dir)
 @top GNU @code{make}
 
...
 

add make info

File modified: info/fdl.texi info/make-stds.texi info/version.texi

Change241 at Wed Mar 17 17:45:37 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 797c2b670431 -r c296f45f3fa5 info/version.texi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/info/version.texi	Wed Mar 17 17:45:37 2010 +0100
@@ -0,0 +1,4 @@
+@set UPDATED 1 April 2006
+@set UPDATED-MONTH April 2006
+@set EDITION 3.81
+@set VERSION 3.81


 

add make info

File modified: info/Makefile info/make.texi

Change240 at Wed Mar 17 17:34:14 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 833c0c78c7cf -r 797c2b670431 info/make.texi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/info/make.texi	Wed Mar 17 17:34:14 2010 +0100
@@ -0,0 +1,11104 @@
+\input texinfo                @c -*- Texinfo -*-
+@c %**start of header
+@setfilename make.info
+
+@include version.texi
+@set EDITION 0.70
+@set RCSID $Id: make.texi,v 1.45 2006/04/01 06:36:40 psmith Exp $
+
+@settitle GNU @code{make}
+@setchapternewpage odd
+@c Combine the variable and function indices:
+@syncodeindex vr fn
+@c Combine the program and concept indices:
+@syncodeindex pg cp
+@c FSF publishers: format makebook.texi instead of using this file directly.
+@c ISBN provided by Lisa M. Opus Goldstein <opus@gnu.org>, 5 May 2004
+@set ISBN 1-882114-83-5
+@c %**end of header
+
+@copying
+This file documents the GNU @code{make} utility, which determines
+automatically which pieces of a large program need to be recompiled,
+and issues the commands to recompile them.
+
+This is Edition @value{EDITION}, last updated @value{UPDATED},
+of @cite{The GNU Make Manual}, for GNU @code{make} version @value{VERSION}.
+
+Copyright @copyright{} 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
+1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006
+Free Software Foundation, Inc.
+
+@quotation
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with the Front-Cover Texts being ``A GNU Manual,''
+and with the Back-Cover Texts as in (a) below.  A copy of the
...
 

erc move server info to private

remove turning on logging when not lurking

File modified: lisp/emacs.d/ivan-erc.el

Change239 at Wed Mar 17 17:22:01 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 1a20f64345ef -r 833c0c78c7cf lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Wed Mar 17 16:25:38 2010 +0100
+++ b/lisp/emacs.d/ivan-erc.el	Wed Mar 17 17:22:01 2010 +0100
@@ -12,17 +12,6 @@
   (require 'erc-track)
   (require 'garak))
 
-(defvar ivan-erc-freenode-password nil
-  "Password to IRC Freenode server.")
-
-(defvar ivan-erc-bitlbee-password nil
-  "Password for Bitlbee server.")
-
-(defvar ivan-erc-lurk t
-  "Will become nil when I say something in IRC.")
-
-(make-variable-buffer-local 'ivan-var-lurk)
-
 (defun ivan-erc ()
   "IRC entry point"
   (interactive)
@@ -30,8 +19,7 @@
   (if (get-buffer "#emacs")
       (switch-to-buffer "#emacs")
     (progn
-      (erc :server "irc.freenode.net" :nick "ivan-kanis"
-           :password ivan-erc-freenode-password)
+      (private-erc)
       (save-window-excursion
         (and (not (get-buffer "*garak*"))
              (file-exists-p elim-executable)
@@ -64,12 +52,7 @@
   (if (string= "#nihongo" (buffer-name))
       (ivan-japanese-input)))
 
-(defun ivan-erc-send-complete (string)
-  (setq ivan-erc-lurk nil))
-
-
-(add-hook 'erc-connect-pre-hook 'ivan-erc-connect-pre)
-(add-hook 'erc-send-completed-hook 'ivan-erc-send-complete)
...
 

add function to publish org

File modified: lisp/emacs.d/ivan-org.el

Change238 at Wed Mar 17 16:25:38 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 56e48c05d783 -r 1a20f64345ef lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Wed Mar 17 16:25:05 2010 +0100
+++ b/lisp/emacs.d/ivan-org.el	Wed Mar 17 16:25:38 2010 +0100
@@ -123,7 +123,9 @@
                       "RET" newline-and-indent
                       "<f9>" org-archive-subtree
                       "M-k s" org-schedule
-                      "C-c C-s" nil)
+                      "C-c C-s" nil
+                      "C-c C-p" ivan-org-publish)
+  
   (define-key org-mode-map "\C-j" ivan-org-ctrl-j-map))
 
 (add-hook 'org-mode-hook 'ivan-org-hook)
@@ -142,6 +144,10 @@
     (setq buffer-read-only t))
   (run-hooks 'ivan-org-keyring-hook))
 
+(defun ivan-org-publish ()
+  (interactive)
+  (org-export-as-html 10 nil nil nil nil "~/build/kanis.fr"))
+
 (defun ivan-org-skip (tag)
   (org-agenda-skip-if
    nil `(notregexp ,(concat "^\\*.*\\(:" tag ":\\|[^:]\n\\)"))))


 

push rando music fix source

File modified: bin/push-random-music.py

Change237 at Wed Mar 17 16:25:05 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 230585500df8 -r 56e48c05d783 bin/push-random-music.py
--- a/bin/push-random-music.py	Wed Mar 17 16:11:00 2010 +0100
+++ b/bin/push-random-music.py	Wed Mar 17 16:25:05 2010 +0100
@@ -43,11 +43,11 @@
         else:
             os.mkdir(target)
             for _file in os.listdir(directory):
-                source = os.path.join(directory)
+                source = os.path.join(directory, _file)
                 size += os.stat(source)[6]
                 if size > size_max:
                     exit(0)
-                shutil.copy(os.path.join(directory, _file), target)
+                shutil.copy(source, target)
 
 # Local Variables:
 # compile-command: "python push-random-music.py"


 

add emms binding to dired

File modified: lisp/emacs.d/ivan-dired.el

Change236 at Wed Mar 17 16:11:00 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 981a0b6f709f -r 230585500df8 lisp/emacs.d/ivan-dired.el
--- a/lisp/emacs.d/ivan-dired.el	Wed Mar 17 10:53:26 2010 +0100
+++ b/lisp/emacs.d/ivan-dired.el	Wed Mar 17 16:11:00 2010 +0100
@@ -41,7 +41,9 @@
   (ivan-keymap-keep-global dired-mode-map)
   (ivan-keymap-define dired-mode-map
                       "A" gnus-dired-attach
+                      "E" emms-add-dired
                       "c" wdired-change-to-wdired-mode
+                      "e" emms-play-dired
                       "j" gnus-dired-find-file-mailcap
                       "p" gnus-dired-print
                       "_" dired-omit-mode)


 

push random music script

File modified: bin/push-random-music.py

Change235 at Wed Mar 17 10:53:26 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 9bfad840081f -r 981a0b6f709f bin/push-random-music.py
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/push-random-music.py	Wed Mar 17 10:53:26 2010 +0100
@@ -0,0 +1,71 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+# push random music on a music device
+import os
+import random
+import shutil
+
+source = "/media/Iomega_HDD/listen"
+destination = "/home/squeeze/tmp/mp3"
+extensions = ["mp3"]
+size_max = 100 * 1024 * 1024
+
+def match_extension(files):
+    for _file in files:
+        for extension in extensions:
+            length = len(extension)
+            if len(_file) > length:
+                if _file[-length:] == extension:
+                    return True
+    return False
+    
+if __name__ == "__main__":
+    size = 0
+    directories = []
+
+    if not os.path.isdir(destination):
+        print "The destination dir %s doesn't exist." % destination
+        exit(1)
+
+    if not os.path.isdir(source):
+        print "The source dir %s doesn't exist." % source
+        exit(1)
+
+    for root, dirs, files in os.walk(source):
+        if match_extension(files):
+            directories.append(root)
...
 

compile web pages again

fix typo and remove rss icons

File modified: website/kanis.fr/Makefile website/kanis.fr/blog.muse website/kanis.fr/index.muse

Change234 at Tue Mar 16 11:41:52 2010 +0100 by squeeze@tao

diff -r 1cfa362b04dc -r 9bfad840081f website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Tue Mar 16 11:41:05 2010 +0100
+++ b/website/kanis.fr/index.muse	Tue Mar 16 11:41:52 2010 +0100
@@ -12,10 +12,10 @@
 d'exemples de code dont je suis l'auteur.
 
 J'aime jouer à de [[game-fr][bons jeux]] de temps en temps. Comme tout internaute
-digne de ce nom, j'ai un [[blog-fr][blog]], [[http://kanis.fr/blog-fr.xml][RSS]][[feed-icon-14x14.png]].
+digne de ce nom, j'ai un [[blog-fr][blog]], [[http://kanis.fr/blog-fr.xml][RSS]].
 
 Vous pouvez me joindre au +33 2 51 84 11 78 ou par e-mail à l'adresse
-suivante : =agile arobas kanis point fr=.
+suivante : =air arobas kanis point fr=.
 
 * In English
 
@@ -23,13 +23,13 @@
 90% [[emacs]], the rest of the time I play [[game-en][fine game]].
 
 I have three blogs:
- - a personal/technical [[blog][blog]], [[http://kanis.fr/blog.xml][RSS]][[feed-icon-14x14.png]].
- - things related to emacs [[blog-emacs][blog]], [[http://kanis.fr/blog-emacs.xml][RSS]][[feed-icon-14x14.png]].
- - my Mercurial commit [[http://kanis.fr/hg.html][blog]], [[http://kanis.fr/hg.xml][RSS]][[feed-icon-14x14.png]].
+ - a personal/technical [[blog][blog]], [[http://kanis.fr/blog.xml][RSS]].
+ - things related to emacs [[blog-emacs][blog]], [[http://kanis.fr/blog-emacs.xml][RSS]].
+ - my Mercurial commit [[http://kanis.fr/hg.html][blog]], [[http://kanis.fr/hg.xml][RSS]].
 
 I have pictures of a [[scotland-trip][holiday in Scotland]] back in 2001.
 
 I wrote the [[multiboot-with-grub][Multiboot with GRUB Mini-HOWTO]], it's a bit dated now.
 
 You can contact me by phone +33 2 51 84 11 78 or by e-mail at the
-following address: =agile at kanis dot fr=.
+following address: =air at kanis dot fr=.


 

fix typo

File modified: lisp/emacs.d/ivan-message.el

Change233 at Tue Mar 16 11:41:05 2010 +0100 by squeeze@tao

diff -r ec860338cab9 -r 1cfa362b04dc lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Tue Mar 16 11:39:56 2010 +0100
+++ b/lisp/emacs.d/ivan-message.el	Tue Mar 16 11:41:05 2010 +0100
@@ -60,7 +60,7 @@
 (defun ivan-message-send ()
   "Hook to run just after completion of a unique e-mail
 address. If the sender matches a specific bbdb note entry the
-input methot will toggle to french"
+input method will toggle to french"
   (let ((language (ivan-bbdb-note (car match-recs))))
     (cond ((eq language 'french)
            (ivan-message-setup-french))
@@ -174,7 +174,7 @@
 
 ;; Copyright (C) 2009 Ivan Kanis
 ;; Author: Ivan Kanis
-;; 
+;;
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

new english quotes, remove the geeky ones

File modified: conf/quotes.english

Change232 at Tue Mar 16 11:39:56 2010 +0100 by squeeze@tao

diff -r 72a902be0a4d -r ec860338cab9 conf/quotes.english
--- a/conf/quotes.english	Tue Mar 16 11:33:46 2010 +0100
+++ b/conf/quotes.english	Tue Mar 16 11:39:56 2010 +0100
@@ -8,17 +8,6 @@
 be done is generally interrupted by someone doing it.
     -- E. Hubbard 
 %
-It turned out that the worm exploited three or four different holes in
-the system. From this, and the fact that we were able to capture and
-examine some of the source code, we realized that we were dealing with
-someone very sharp, probably not someone here on campus.
-    -- Dr. Richard LeBlanc 
-%
-The cause of these complaints lies in WinZip, which turns an all
-upper-case directory into an all lower case one in a fit of
-helpfulness
-    -- Ant Documentation 
-%
 Old friends pass away, new friends appear. It is just like the
 days. An old day passes, a new day arrives.  The important thing is to
 make it meaningful: a meaningful friend - or a meaningful day.
@@ -96,10 +85,6 @@
 subject.
     -- Winston Churchill 
 %
-I spent two years hacking Java for money, and got fed up with it -
-it's too slow, too incomplete, too insecure, and too nonportable.
-    -- Ronan Waide 
-%
 We know what we are, but know not what we may be.
     -- William Shakespeare 
 %
@@ -107,11 +92,6 @@
 alone with my computer.'
     -- Dani Berry 
 %
-Debugging is twice as hard as writing the code in the first place.
-Therefore, if you write the code as cleverly as possible, you are, by
-definition, not smart enough to debug it.
-    -- Brian W. Kernighan 
-%
...
 

backup Luicia's data

File modified: bin/start.sh

Change231 at Tue Mar 16 11:33:46 2010 +0100 by squeeze@tao

diff -r 481b98330ae7 -r 72a902be0a4d bin/start.sh
--- a/bin/start.sh	Tue Mar 16 11:33:19 2010 +0100
+++ b/bin/start.sh	Tue Mar 16 11:33:46 2010 +0100
@@ -32,6 +32,7 @@
     ssh-add
     check "password error with  private key"
     updateweb.py &
+    nice rsync -a ~/lucia /media/Iomega_HDD &
 fi
 wrapper.py emacs &
 firefox &


 

substitute tetex with texlive for Debian squeeze

File modified: bin/setup.sh

Change230 at Tue Mar 16 11:33:19 2010 +0100 by squeeze@tao

diff -r a0f584764806 -r 481b98330ae7 bin/setup.sh
--- a/bin/setup.sh	Tue Mar 16 11:29:16 2010 +0100
+++ b/bin/setup.sh	Tue Mar 16 11:33:19 2010 +0100
@@ -61,8 +61,6 @@
 imagemagick \
 kakasi \
 k3b \
-lacheck \
-latex-ucs \
 less \
 lftp \
 libdbus-1-dev \
@@ -105,10 +103,8 @@
 strace \
 subversion \
 sudo \
-tetex-base \
-tetex-extra \
-tetex-frogg \
 texinfo \
+texlive \
 tidy \
 unison \
 unrar \


 

setenv.sh check for debian before running sed

File modified: bin/setenv.sh

Change229 at Tue Mar 16 11:29:16 2010 +0100 by squeeze@tao

diff -r bafd59e315c4 -r a0f584764806 bin/setenv.sh
--- a/bin/setenv.sh	Mon Mar 15 18:57:18 2010 +0100
+++ b/bin/setenv.sh	Tue Mar 16 11:29:16 2010 +0100
@@ -4,7 +4,7 @@
 # input needle haystack
 match() {
     # backslash forward slash
-    if test X${VENDOR} = Xubuntu
+    if test X${VENDOR} = Xubuntu -o X${VENDOR} = Xdebian
     then
         back=$(echo $1 | sed -e 's/\//\\\\\//g')
     else 


 

add le chien andalou

File modified: website/kanis.fr/blog-fr.muse

Change228 at Mon Mar 15 18:57:18 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 83ca0c4054d4 -r bafd59e315c4 website/kanis.fr/blog-fr.muse
--- a/website/kanis.fr/blog-fr.muse	Mon Mar 15 18:56:35 2010 +0100
+++ b/website/kanis.fr/blog-fr.muse	Mon Mar 15 18:57:18 2010 +0100
@@ -1,8 +1,13 @@
 #title Blog français
 
+* 20100223: Le Chien Andalou
+
+J'ai regardé le film de Luis Buñuel et de Salvador Dali. Ils étaient à
+la pointe du surréalisme. Les fondus enchaînés sont stupéfiants.
+
 * 20091122: Ajout d'une page de bon jeux
 
-Je vient d'ajouter une page sur les [[game-fr][jeux que j'apprecie]].
+Je viens d'ajouter une page sur les [[game-fr][jeux que j'apprecie]].
 
 * 20090117: Les conséquence du stress au travail
 


 

fix feed icon for webfs

File modified: website/kanis.fr/index.muse

Change227 at Mon Mar 15 18:56:35 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 456b97b4e195 -r 83ca0c4054d4 website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Mon Mar 15 17:44:47 2010 +0100
+++ b/website/kanis.fr/index.muse	Mon Mar 15 18:56:35 2010 +0100
@@ -12,7 +12,7 @@
 d'exemples de code dont je suis l'auteur.
 
 J'aime jouer à de [[game-fr][bons jeux]] de temps en temps. Comme tout internaute
-digne de ce nom, j'ai un [[blog-fr][blog]], [[http://kanis.fr/blog-fr.xml][RSS]][[http://kanis.fr/blog.xml][feed-icon-14x14.png]].
+digne de ce nom, j'ai un [[blog-fr][blog]], [[http://kanis.fr/blog-fr.xml][RSS]][[feed-icon-14x14.png]].
 
 Vous pouvez me joindre au +33 2 51 84 11 78 ou par e-mail à l'adresse
 suivante : =agile arobas kanis point fr=.
@@ -23,9 +23,9 @@
 90% [[emacs]], the rest of the time I play [[game-en][fine game]].
 
 I have three blogs:
- - a personal/technical [[blog][blog]], [[http://kanis.fr/blog.xml][RSS]][[http://kanis.fr/blog.xml][feed-icon-14x14.png]].
- - things related to emacs [[blog-emacs][blog]], [[http://kanis.fr/blog-emacs.xml][RSS]][[http://kanis.fr/blog-emacs.xml][feed-icon-14x14.png]].
- - my Mercurial commit [[http://kanis.fr/hg.html][blog]], [[http://kanis.fr/hg.xml][RSS]][[http://kanis.fr/hg.xml][feed-icon-14x14.png]].
+ - a personal/technical [[blog][blog]], [[http://kanis.fr/blog.xml][RSS]][[feed-icon-14x14.png]].
+ - things related to emacs [[blog-emacs][blog]], [[http://kanis.fr/blog-emacs.xml][RSS]][[feed-icon-14x14.png]].
+ - my Mercurial commit [[http://kanis.fr/hg.html][blog]], [[http://kanis.fr/hg.xml][RSS]][[feed-icon-14x14.png]].
 
 I have pictures of a [[scotland-trip][holiday in Scotland]] back in 2001.
 


 

add ergonomic key to lookup

File modified: lisp/emacs.d/ivan-keymap.el

Change226 at Mon Mar 15 17:44:47 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 2be02ac5d18f -r 456b97b4e195 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Fri Mar 05 16:04:40 2010 +0100
+++ b/lisp/emacs.d/ivan-keymap.el	Mon Mar 15 17:44:47 2010 +0100
@@ -142,32 +142,31 @@
 
 ;;; Global keymap
 (ivan-keymap-global
- "<S-up>" windmove-up
+ "<M-insert>" swbuff-switch-to-previous-buffer
+ "<M-insertchar>" swbuff-switch-to-previous-buffer
  "<S-down>" windmove-down
  "<S-left>" windmove-left
  "<S-right>" windmove-right
+ "<S-up>" windmove-up
  "<end>" end-of-buffer
+ "<home>" beginning-of-buffer
+ "<insert>" swbuff-switch-to-next-buffer
+ "<insertchar>" swbuff-switch-to-next-buffer
+ "<kp-begin>" next-line
+ "<kp-insert>" ivan-lookup
  "<select>" end-of-buffer
- "<home>" beginning-of-buffer
  "C-l" open-line
  "C-o" other-window
  "C-z" ivan-lookup
+ "M-#" calc-dispatch
  "M-0" delete-window
  "M-1" delete-other-windows
  "M-2" split-window-vertically
  "M-3" split-window-horizontally
- "M-#" calc-dispatch
  "M-i" ivan-keymap-map-m-i
  "M-k" ivan-keymap-map-m-k
  "M-o" other-frame
- "M-x" ivan-fun-execute
- "<insert>" swbuff-switch-to-next-buffer
- "<insertchar>" swbuff-switch-to-next-buffer
- "<M-insert>" swbuff-switch-to-previous-buffer
- "<M-insertchar>" swbuff-switch-to-previous-buffer
- ;; Darwin
- "<help>" swbuff-switch-to-next-buffer
...
 

activate propre input with flyspell

File modified: lisp/emacs.d/ivan-english.el lisp/emacs.d/ivan-french.el

Change225 at Fri Mar 05 16:04:40 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 49641b131bf0 -r 2be02ac5d18f lisp/emacs.d/ivan-french.el
--- a/lisp/emacs.d/ivan-french.el	Wed Mar 03 20:11:06 2010 +0100
+++ b/lisp/emacs.d/ivan-french.el	Fri Mar 05 16:04:40 2010 +0100
@@ -23,6 +23,7 @@
 
 (defun ivan-french-flyspell ()
   (interactive)
+  (ivan-french-input)
   (ivan-fun-spell ivan-french-dictionary-name 'set)
   (flyspell-mode 1))
 


 

new french quotes

File modified: conf/quotes.french

Change224 at Wed Mar 03 20:11:06 2010 +0100 by ivan@tao

diff -r 9dfb93a45e5f -r 49641b131bf0 conf/quotes.french
--- a/conf/quotes.french	Mon Feb 22 11:05:40 2010 +0100
+++ b/conf/quotes.french	Wed Mar 03 20:11:06 2010 +0100
@@ -198,7 +198,7 @@
     -- Jean de la Fontaine
 %
 Ne faut-il que délibérer,
-La cour en conseillers foisonne;
+La cour en conseillers foisonne ;
 Est-il besoin d'exécuter,
 L'on ne rencontre plus personne.
     -- Jean de la Fontaine
@@ -208,7 +208,7 @@
     -- Antoine Furetière
 %
 Tu ne vantes les gens que des siècles passés:
-Pardonne mon aveu sincère et légitime;
+Pardonne mon aveu sincère et légitime ;
 Je ne t'estime pas assez
 Pour vouloir par ma mort mériter ton estime.
     -- Bussy-Rabutin
@@ -289,7 +289,7 @@
 Est le dernier de la sagesse.
     -- Antoine Bret
 %
-Il est facile de critiquer juste; et difficile d'exécuter
+Il est facile de critiquer juste ; et difficile d'exécuter
 médiocrement.
     -- Denis Diderot
 %
@@ -319,16 +319,16 @@
 %
 On meurt deux fois je le vois bien :
 Cesser d'aimer et d'être aimable,
-C'est une mort insupportable;
+C'est une mort insupportable ;
 Cesser de vivre ce n'est rien.
     -- François Marie Arouet, dit Voltaire
 %
-Les malheurs particuliers font le bien général; de sorte que que plus
+Les malheurs particuliers font le bien général ; de sorte que que plus
...
 

fix typo in resume

File modified: website/resume/resume.xml

Change223 at Mon Feb 22 11:05:40 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 39af3f87163f -r 9dfb93a45e5f website/resume/resume.xml
--- a/website/resume/resume.xml	Mon Feb 22 10:55:03 2010 +0100
+++ b/website/resume/resume.xml	Mon Feb 22 11:05:40 2010 +0100
@@ -44,7 +44,7 @@
 	<i>Implemented backend of web site and create a new PHP
 	framework called SVF for Ici New York.</i>
 	<i>Manage team for maintenance of an auditing software for
-	MasterCard and handle knowledge transfert.</i>
+	MasterCard and handle knowledge transfer.</i>
       </duty>
       <duty lang='fr'>
 	<i>Écriture d'une distribution Debian Live configurée pour


 

org agenda show 2 days

remove agenda custom commands, it's not used

File modified: lisp/emacs.d/ivan-org.el

Change222 at Mon Feb 22 10:55:03 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 79a8163c41f1 -r 39af3f87163f lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Sat Feb 20 19:07:40 2010 +0100
+++ b/lisp/emacs.d/ivan-org.el	Mon Feb 22 10:55:03 2010 +0100
@@ -146,12 +146,6 @@
   (org-agenda-skip-if
    nil `(notregexp ,(concat "^\\*.*\\(:" tag ":\\|[^:]\n\\)"))))
 
-(defun ivan-org-skip-home ()
-  (ivan-org-skip "home"))
-
-(defun ivan-org-skip-office ()
-  (ivan-org-skip "office"))
-
 (defun ivan-org-todo-prefix ()
   "Switch to new state with completion."
   (interactive)
@@ -165,14 +159,9 @@
  appt-delete-window-function (lambda)
  appt-message-warning-time 90
  org-agenda-files (list ivan-org-todo ivan-org-calendar)
- org-agenda-custom-commands
- '(("h" "agenda with home entries" agenda ""
-    ((org-agenda-skip-function 'ivan-org-skip-home)))
-   ("o" "agenda with office entries" agenda ""
-    ((org-agenda-skip-function 'ivan-org-skip-office))))
  org-agenda-fontify-priorities nil
  org-agenda-start-on-weekday nil
- org-agenda-ndays 1
+ org-agenda-ndays 2
  org-default-notes-file ivan-org-todo
  org-directory ivan-var-portable-dir
  org-hide-leading-stars t


 

strip DOS carriage return

File modified: lisp/emacs.d/ivan-re-builder.el lisp/emacs.d/ivan-windows.el

Change221 at Sat Feb 20 19:07:40 2010 +0100 by ivan@tao

diff -r 16052cd629ef -r 79a8163c41f1 lisp/emacs.d/ivan-windows.el
--- a/lisp/emacs.d/ivan-windows.el	Sat Feb 20 19:07:02 2010 +0100
+++ b/lisp/emacs.d/ivan-windows.el	Sat Feb 20 19:07:40 2010 +0100
@@ -1,34 +1,33 @@
-;;; ivan-windows.el --- windows support

-

-;;; Commentary:

-

-;;; THANKS:

-

-;;; BUGS:

-

-;;; INSTALLATION:

-

-;;; Code:

-

-(if (eq window-system 'w32)

-    (setq

-     find-program (concat (getenv "WINPACK") "\\gnuwin32\\bin\\find")

-     grep-find-use-xargs 'exec))

-

-;; Copyright (C) 2008 Ivan Kanis

-;; Author: Ivan Kanis

-;; 
-;;

-;; This program is free software ; you can redistribute it and/or modify

-;; it under the terms of the GNU General Public License as published by

-;; the Free Software Foundation ; either version 2 of the License, or

-;; (at your option) any later version.

-;;

-;; This program is distributed in the hope that it will be useful, but

-;; WITHOUT ANY WARRANTY ; without even the implied warranty of

-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU

-;; General Public License for more details.

-;;

-;; You should have received a copy of the GNU General Public License

-;; along with this program ; if not, write to the Free Software

-;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

+;;; ivan-windows.el --- windows support
+
+;;; Commentary:
...
 

make updateweb.py create svf tar ball

File modified: Makefile bin/updateweb.py

Change220 at Sat Feb 20 19:07:02 2010 +0100 by ivan@tao

diff -r c754998327da -r 16052cd629ef bin/updateweb.py
--- a/bin/updateweb.py	Sat Feb 20 19:04:34 2010 +0100
+++ b/bin/updateweb.py	Sat Feb 20 19:07:02 2010 +0100
@@ -2,7 +2,6 @@
 
 # Copyright (C) 2006  Ivan Kanis
 # Author: Ivan Kanis
-# 
 #
 # This program is free software ; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -30,6 +29,12 @@
         if not f in  ["blog.xml", "blog-fr.xml", "blog-emacs.xml"]:
             os.remove(web_dir + "/" +f)
 
+# build tar ball
+ret = os.system("~/hg/svf/release.sh")
+if ret != 0:
+    print "error creating svf tar ball"
+    exit()
+
 rsync = 'rsync -rvz --times '
 for dest in ['ivan@kanis.fr:~/www/', 'ivan@minimal.cx:~/htdocs/']:
     os.system( rsync + '--copy-links --copy-dirlinks \


 

update resume

File modified: website/resume/muse.tmpl website/resume/resume.xml website/resume/resume.xsd

Change219 at Sat Feb 20 19:04:34 2010 +0100 by ivan@tao

diff -r 3e23aadf711b -r c754998327da website/resume/resume.xsd
--- a/website/resume/resume.xsd	Sat Feb 20 19:04:13 2010 +0100
+++ b/website/resume/resume.xsd	Sat Feb 20 19:04:34 2010 +0100
@@ -49,7 +49,6 @@
 	  <xs:element name='email' type='EmailType'/>
 	  <xs:element name='web' type='xs:string'/>
 	  <xs:element name='birthdate' type='xs:date'/>
-	  <xs:element name='rcsdate' type='xs:string'/>
 	</xs:sequence>
   </xs:complexType>
 


 

color all SVF sample files

File modified: website/kanis.fr/svf.muse

Change218 at Sat Feb 20 19:04:13 2010 +0100 by ivan@tao

diff -r d31952e70ca7 -r 3e23aadf711b website/kanis.fr/svf.muse
--- a/website/kanis.fr/svf.muse	Fri Feb 19 18:39:04 2010 +0100
+++ b/website/kanis.fr/svf.muse	Sat Feb 20 19:04:13 2010 +0100
@@ -52,7 +52,7 @@
 the data entered by the user otherwise we display the form that may
 contain some error messages.
 
-<include file="~/hg/svf/example2.php" markup="example" lang="php">
+<include file="~/hg/svf/example2.php" markup="src" lang="php">
 
 Here is the form when it's rendered, the error message is
 displayed as the entry is erroneous.
@@ -67,7 +67,7 @@
 
 Here is a basic template:
 
-<include file="~/hg/svf/template.php" markup="example" lang="php">
+<include file="~/hg/svf/template.php" markup="src" lang="php">
 
 The template variable is a string that is evaluated at run time. If an
 error message happens at the current field the error variable will
@@ -82,7 +82,7 @@
 file input take a PHP file array as an argument. See how the function
 function_file_exists differs from function_check_date_time in function.php.
 
-<include file="~/hg/svf/example3.php" markup="example" lang="php">
+<include file="~/hg/svf/example3.php" markup="src" lang="php">
 
 Here is the output when giving a file that's is not a jpeg. Note that
 the fields are nicely lined up and the error message is red. The
@@ -97,7 +97,7 @@
 attributes. Optionally it can have the checked attribute set to true so
 that it's checked when displaying the form.
 
-<include file="~/hg/svf/example4.php" markup="example" lang="php">
+<include file="~/hg/svf/example4.php" markup="src" lang="php">
 
 Notice that the color red is checked.
 


...
 

quit using vcursor

File modified: lisp/emacs.d/Makefile

Change217 at Fri Feb 19 18:39:04 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 88d7fdeadeef -r d31952e70ca7 lisp/emacs.d/Makefile
--- a/lisp/emacs.d/Makefile	Mon Feb 15 09:19:27 2010 +0100
+++ b/lisp/emacs.d/Makefile	Fri Feb 19 18:39:04 2010 +0100
@@ -75,7 +75,6 @@
 ivan-start.el \
 ivan-term.el \
 ivan-vc.el \
-ivan-vcursor.el \
 ivan-w3m.el \
 ivan-windows.el \
 ivan-woman.el \


 

suppress $Id$

File modified: lisp/ivan/Makefile lisp/ivan/keyring.el lisp/ivan/nterm.el lisp/ivan/realplay.el lisp/ivan/wclock.el

Change216 at Mon Feb 15 09:19:27 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 33c4782731ce -r 88d7fdeadeef lisp/ivan/wclock.el
--- a/lisp/ivan/wclock.el	Mon Feb 15 09:19:11 2010 +0100
+++ b/lisp/ivan/wclock.el	Mon Feb 15 09:19:27 2010 +0100
@@ -100,7 +100,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; $Id: wclock.el 2342 2008-08-02 17:11:48Z ivan $
+;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

suppress $Id$

File modified: lisp/emacs.d/ivan-abbrev.el lisp/emacs.d/ivan-ack.el lisp/emacs.d/ivan-anki.el lisp/emacs.d/ivan-auctex.el lisp/emacs.d/ivan-autoinsert.el lisp/emacs.d/ivan-bbdb.el lisp/emacs.d/ivan-bongo.el lisp/emacs.d/ivan-bs.el lisp/emacs.d/ivan-c.el lisp/emacs.d/ivan-calendar.el lisp/emacs.d/ivan-comint.el lisp/emacs.d/ivan-common-code.el lisp/emacs.d/ivan-compile.el lisp/emacs.d/ivan-dictionary.el lisp/emacs.d/ivan-diff.el lisp/emacs.d/ivan-dired.el lisp/emacs.d/ivan-emms.el lisp/emacs.d/ivan-english.el lisp/emacs.d/ivan-epg.el lisp/emacs.d/ivan-erc.el lisp/emacs.d/ivan-face.el lisp/emacs.d/ivan-flashcard.el lisp/emacs.d/ivan-flyspell.el lisp/emacs.d/ivan-font.el lisp/emacs.d/ivan-french.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-gnus.el lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-grep.el lisp/emacs.d/ivan-help.el lisp/emacs.d/ivan-ido.el lisp/emacs.d/ivan-info.el lisp/emacs.d/ivan-japanese.el lisp/emacs.d/ivan-keymap.el lisp/emacs.d/ivan-keyring.el lisp/emacs.d/ivan-lisp.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-lookup.el lisp/emacs.d/ivan-message.el lisp/emacs.d/ivan-mldonkey.el lisp/emacs.d/ivan-muse.el lisp/emacs.d/ivan-newsticker.el lisp/emacs.d/ivan-nterm.el lisp/emacs.d/ivan-nxml.el lisp/emacs.d/ivan-org.el lisp/emacs.d/ivan-outline.el lisp/emacs.d/ivan-perl.el lisp/emacs.d/ivan-psvn.el lisp/emacs.d/ivan-python.el lisp/emacs.d/ivan-quail.el lisp/emacs.d/ivan-quotes.el lisp/emacs.d/ivan-re-builder.el lisp/emacs.d/ivan-server.el lisp/emacs.d/ivan-shell.el lisp/emacs.d/ivan-speedbar.el lisp/emacs.d/ivan-start.el lisp/emacs.d/ivan-term.el lisp/emacs.d/ivan-tetris.el lisp/emacs.d/ivan-var.el lisp/emacs.d/ivan-vcursor.el lisp/emacs.d/ivan-w3m.el lisp/emacs.d/ivan-warning.el lisp/emacs.d/ivan-windows.el lisp/emacs.d/ivan-woman.el

Change215 at Mon Feb 15 09:19:11 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r ca2f3097d126 -r 33c4782731ce lisp/emacs.d/ivan-woman.el
--- a/lisp/emacs.d/ivan-woman.el	Mon Feb 15 09:14:18 2010 +0100
+++ b/lisp/emacs.d/ivan-woman.el	Mon Feb 15 09:19:11 2010 +0100
@@ -37,7 +37,7 @@
 
 ;; Copyright (C) 2007 Ivan Kanis
 ;; Author: Ivan Kanis
-;; $Id: ivan-woman.el 1909 2007-06-22 08:31:55Z ivan $
+;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

suppress $Id$

File modified: website/Makefile website/kanis.fr/copy-dist.py website/kanis.fr/download.muse website/kanis.fr/emacs.muse website/kanis.fr/hg2rss.py website/kanis.fr/multiboot-with-grub.muse website/kanis.fr/publish.el website/kanis.fr/svf-example1.png website/kanis.fr/svf-example2.png website/kanis.fr/svf-example3.png website/kanis.fr/svf-example4.png website/kanis.fr/svf.muse

Change214 at Mon Feb 15 09:14:18 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r a4f092a4c043 -r ca2f3097d126 website/kanis.fr/publish.el
--- a/website/kanis.fr/publish.el	Mon Feb 15 09:12:13 2010 +0100
+++ b/website/kanis.fr/publish.el	Mon Feb 15 09:14:18 2010 +0100
@@ -27,7 +27,7 @@
 
 ;; Copyright (C) 2008 Ivan Kanis
 ;; Author: Ivan Kanis
-;; $Id$
+;; 
 ;;
 ;; This program is free software ; you can redistribute it and/or modify
 ;; it under the terms of the GNU General Public License as published by


 

suppress $Id$

File modified: bin/archive-notice.py bin/autologin-ivan bin/bintohex.py bin/blastwave.pl bin/blog.pl bin/build.py bin/clean-zic.py bin/download-stream.py bin/everyday.py bin/expire-email.py bin/external-backup.py bin/flac2mp3.py bin/grepk bin/ivan-screen-info.c bin/ivan-setup.py bin/ivanx.c bin/job-filter.py bin/keyring.pl bin/logwatch-filter.py bin/lolix.py bin/quote.py bin/report-filter.py bin/rtraceback.py bin/screen-ssh-agent.py bin/setenv.sh bin/setup.py bin/shell-interactive.py bin/signature.pl bin/signature.py bin/soji.py bin/start.sh bin/string-to-image.py bin/stripcr.sh bin/svn-change-repo.py bin/system-name.py bin/test-mail.py bin/timer.py bin/updateweb.py bin/util.py bin/wallpaper.py bin/winmixer.py bin/wrap-svn bin/wrapper.py bin/xserver.py bin/xsession.py

Change213 at Mon Feb 15 09:12:13 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 04d6f7a423bc -r a4f092a4c043 bin/xsession.py
--- a/bin/xsession.py	Mon Feb 15 09:08:15 2010 +0100
+++ b/bin/xsession.py	Mon Feb 15 09:12:13 2010 +0100
@@ -135,7 +135,7 @@
 
 # Copyright (C) 2006 Ivan Kanis
 # Author: Ivan Kanis
-# $Id: xsession.py 2062 2007-11-13 15:05:53Z ivan $
+# 
 #
 # This program is free software ; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by


 

vc-dir bind revert key to "r"

File modified: lisp/emacs.d/Makefile lisp/emacs.d/init.el lisp/emacs.d/ivan-vc.el lisp/emacs.d/ivan-xcscope.el

Change212 at Mon Feb 15 09:08:15 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 2ecedf31cf80 -r 04d6f7a423bc lisp/emacs.d/ivan-vc.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/emacs.d/ivan-vc.el	Mon Feb 15 09:08:15 2010 +0100
@@ -0,0 +1,42 @@
+;;; ivan-vc.el --- version control
+
+;;; Commentary:
+
+;;; THANKS:
+
+;;; BUGS:
+
+;;; INSTALLATION:
+
+;;; Code:
+
+(require 'ivan-keymap)
+(eval-when-compile
+  (require 'vc-dir))
+
+(defun ivan-vc-hook ()
+  (ivan-keymap-define vc-dir-mode-map
+                      "r" vc-revert))
+
+(add-hook 'vc-dir-mode-hook 'ivan-vc-hook)
+
+;; Local Variables:
+;; compile-command: "make"
+;; End:
+
+;; Copyright (C) 2010 Ivan Kanis
+;; Author: Ivan Kanis
+;;
+;; This program is free software ; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation ; either version 2 of the License, or
+;; (at your option) any later version.
+;;
+;; This program is distributed in the hope that it will be useful, but
+;; WITHOUT ANY WARRANTY ; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
...
 

fix M-k s does not work in agenda

File modified: lisp/emacs.d/ivan-org.el

Change211 at Sun Feb 14 23:36:47 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 5a785414a99a -r 2ecedf31cf80 lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Sun Feb 14 16:23:28 2010 +0100
+++ b/lisp/emacs.d/ivan-org.el	Sun Feb 14 23:36:47 2010 +0100
@@ -57,7 +57,6 @@
 (defun ivan-org-agenda-hook ()
   (ivan-keymap-keep-global org-agenda-mode-map)
   (ivan-keymap-define ivan-org-agenda-ctrl-j-map
-                      "M-k s" org-agenda-schedule
                       "d" ivan-org-agenda-done
                       "i" org-agenda-clock-in
                       "j" org-clock-goto
@@ -65,7 +64,8 @@
                       "t" ivan-org-agenda-todo-prefix
                       "w" ivan-org-agenda-wait)
   (ivan-keymap-define org-agenda-mode-map
-                      "<f9>" org-agenda-archive)
+                      "<f9>" org-agenda-archive
+                      "M-k s" org-agenda-schedule)
   (define-key org-agenda-mode-map "\C-j" ivan-org-agenda-ctrl-j-map))
 
 


 

fix grep with cursor on cursor

File modified: lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-grep.el lisp/emacs.d/ivan-keymap.el

Change210 at Sun Feb 14 16:23:28 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 39a849db2468 -r 5a785414a99a lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Sun Feb 14 15:58:48 2010 +0100
+++ b/lisp/emacs.d/ivan-keymap.el	Sun Feb 14 16:23:28 2010 +0100
@@ -111,7 +111,7 @@
  "c" 'ivan-compile
  "e" 'ivan-keymap-english-map
  "f" 'ivan-keymap-french-map
- "g" 'grep
+ "g" 'ivan-grep
  "h" 'ivan-devhelp-word-at-point
  "j" 'ivan-keymap-japanese-map
  "m" 'woman


 

add flyspell mode for english and french

File modified: lisp/emacs.d/ivan-english.el lisp/emacs.d/ivan-french.el

Change209 at Sun Feb 14 15:58:48 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r f75e06e60ed4 -r 39a849db2468 lisp/emacs.d/ivan-french.el
--- a/lisp/emacs.d/ivan-french.el	Sun Feb 14 15:49:52 2010 +0100
+++ b/lisp/emacs.d/ivan-french.el	Sun Feb 14 15:58:48 2010 +0100
@@ -21,6 +21,11 @@
                          'ivan-french-dictionary-history
                          (current-word))))))
 
+(defun ivan-french-flyspell ()
+  (interactive)
+  (ivan-fun-spell ivan-french-dictionary-name 'set)
+  (flyspell-mode 1))
+
 (defun ivan-french-input ()
   (interactive)
   (activate-input-method 'ivan-french-prefix))
@@ -56,6 +61,7 @@
 (ivan-keymap-prefix
  ivan-keymap-french-map
  "d" 'ivan-french-dictionary
+ "f" 'ivan-french-flyspell
  "i" 'ivan-french-input
  "l" 'ivan-french-letter
  "m" 'ivan-french-message


 

add random quote to web page

File modified: lisp/emacs.d/ivan-muse.el website/kanis.fr/index.muse

Change208 at Sun Feb 14 15:49:52 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r c44401752a7d -r f75e06e60ed4 website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Sun Feb 14 15:21:33 2010 +0100
+++ b/website/kanis.fr/index.muse	Sun Feb 14 15:49:52 2010 +0100
@@ -1,5 +1,9 @@
 #title Ivan Kanis
 
+<lisp markup="verse">
+(ivan-muse-quote)
+</lisp>
+
 [[mugshot.jpg][© Ian Spray - Cambridge 2006]]
 
 * En français
@@ -29,5 +33,3 @@
 
 You can contact me by phone +33 2 51 84 11 78 or by e-mail at the
 following address: =agile at kanis dot fr=.
-
-


 

fix extra blank line

File modified: lisp/emacs.d/ivan-message.el

Change207 at Sun Feb 14 15:21:33 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 37bafd24e74c -r c44401752a7d lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Sun Feb 14 15:19:34 2010 +0100
+++ b/lisp/emacs.d/ivan-message.el	Sun Feb 14 15:21:33 2010 +0100
@@ -57,7 +57,6 @@
                        (length string) 'ivan 'signature string)
     string))
 
-
 (defun ivan-message-send ()
   "Hook to run just after completion of a unique e-mail
 address. If the sender matches a specific bbdb note entry the


 

bbdb pull french match into a variable

File modified: lisp/emacs.d/ivan-bbdb.el

Change206 at Sun Feb 14 15:19:34 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 60813bfac4c4 -r 37bafd24e74c lisp/emacs.d/ivan-bbdb.el
--- a/lisp/emacs.d/ivan-bbdb.el	Sun Feb 14 15:13:51 2010 +0100
+++ b/lisp/emacs.d/ivan-bbdb.el	Sun Feb 14 15:19:34 2010 +0100
@@ -12,8 +12,11 @@
   (require 'bbdb-com)
   (require 'bbdb-picture))
 
-(defvar ivan-bbdb-french-match ""
-  "Regexp that matches french e-mail")
+(defvar ivan-bbdb-french-email-match ""
+  "Regexp that matches french e-mail address")
+
+(defvar ivan-bbdb-french-note-match "french\\|ffriend\\|fbiz"
+  "Regexp that matches bbdb note for french")
 
 (defvar ivan-bbdb-map nil
   "Ivan BBDB prefix keymap")
@@ -57,9 +60,9 @@
   (let ((note (bbdb-record-notes rec))
         (email (bbdb-record-net rec)))
     (cond
-     ((and note (string-match "french\\|ffriend\\|fbiz" note))
+     ((and note (string-match ivan-bbdb-french-note-match note))
       'french)
-     ((and email (string-match ivan-bbdb-french-match (car email)))
+     ((and email (string-match ivan-bbdb-french-email-match (car email)))
       'french)
      ((and note (string-match "japanese" note))
       'japanese)


 

display php samples with color

File modified: website/kanis.fr/svf.muse

Change205 at Sun Feb 14 15:13:51 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r ef5ce4fed3ef -r 60813bfac4c4 website/kanis.fr/svf.muse
--- a/website/kanis.fr/svf.muse	Sun Feb 14 10:50:22 2010 +0100
+++ b/website/kanis.fr/svf.muse	Sun Feb 14 15:13:51 2010 +0100
@@ -52,7 +52,7 @@
 the data entered by the user otherwise we display the form that may
 contain some error messages.
 
-<include file="~/hg/svf/example2.php" markup="example">
+<include file="~/hg/svf/example2.php" markup="example" lang="php">
 
 Here is the form when it's rendered, the error message is
 displayed as the entry is erroneous.
@@ -67,7 +67,7 @@
 
 Here is a basic template:
 
-<include file="~/hg/svf/template.php" markup="example">
+<include file="~/hg/svf/template.php" markup="example" lang="php">
 
 The template variable is a string that is evaluated at run time. If an
 error message happens at the current field the error variable will
@@ -82,7 +82,7 @@
 file input take a PHP file array as an argument. See how the function
 function_file_exists differs from function_check_date_time in function.php.
 
-<include file="~/hg/svf/example3.php" markup="example">
+<include file="~/hg/svf/example3.php" markup="example" lang="php">
 
 Here is the output when giving a file that's is not a jpeg. Note that
 the fields are nicely lined up and the error message is red. The
@@ -97,7 +97,7 @@
 attributes. Optionally it can have the checked attribute set to true so
 that it's checked when displaying the form.
 
-<include file="~/hg/svf/example4.php" markup="example">
+<include file="~/hg/svf/example4.php" markup="example" lang="php">
 
 Notice that the color red is checked.
 


...
 

muse toggle background color when publishing for htmlize

don't compile web page anymore due to wrong tty color

File modified: lisp/emacs.d/ivan-muse.el website/kanis.fr/Makefile website/kanis.fr/index.muse website/kanis.fr/svf.muse

Change204 at Sun Feb 14 10:50:22 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 21d64b963a14 -r ef5ce4fed3ef website/kanis.fr/svf.muse
--- a/website/kanis.fr/svf.muse	Sat Feb 13 20:08:58 2010 +0100
+++ b/website/kanis.fr/svf.muse	Sun Feb 14 10:50:22 2010 +0100
@@ -23,7 +23,7 @@
 
 The last function end_printf terminates the form and prints it out.
 
-<include file="~/hg/svf/example1.php" markup="example">
+<include file="~/hg/svf/example1.php" markup="src" lang="php">
 
 The form looks like this, it doesn't look great but read about
 templates below.


 

remove xml files that muse is creating

File modified: bin/updateweb.py

Change203 at Sat Feb 13 20:08:58 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 55e588bdff65 -r 21d64b963a14 bin/updateweb.py
--- a/bin/updateweb.py	Sat Feb 13 15:42:29 2010 +0100
+++ b/bin/updateweb.py	Sat Feb 13 20:08:58 2010 +0100
@@ -22,6 +22,14 @@
 
 import os
 
+# muse generates a bunch of unneede xml files, just remove them
+web_dir = os.path.expanduser("~/build/kanis.fr")
+files = os.listdir(web_dir)
+for f in files:
+    if f[-3:] == "xml":
+        if not f in  ["blog.xml", "blog-fr.xml", "blog-emacs.xml"]:
+            os.remove(web_dir + "/" +f)
+
 rsync = 'rsync -rvz --times '
 for dest in ['ivan@kanis.fr:~/www/', 'ivan@minimal.cx:~/htdocs/']:
     os.system( rsync + '--copy-links --copy-dirlinks \


 

ivan-face: implement ivan-face-set-background-foreground function

File modified: lisp/emacs.d/init.el lisp/emacs.d/ivan-common-code.el lisp/emacs.d/ivan-face.el lisp/emacs.d/ivan-xcscope.el

Change202 at Sat Feb 13 15:42:29 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r b77a61aa4807 -r 55e588bdff65 lisp/emacs.d/ivan-xcscope.el
--- a/lisp/emacs.d/ivan-xcscope.el	Fri Feb 12 19:46:24 2010 +0100
+++ b/lisp/emacs.d/ivan-xcscope.el	Sat Feb 13 15:42:29 2010 +0100
@@ -54,7 +54,7 @@
 (ivan-face
  cscope-file-face normal
  cscope-function-face blue
- cscope-line-face
+ cscope-line-face orange
  cscope-line-number-face normal)
 
 ;; Local Variables:


 

face add suport to toggle backround between black and white

File modified: lisp/emacs.d/ivan-face.el

Change201 at Fri Feb 12 19:46:24 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r b594d4c3ce3e -r b77a61aa4807 lisp/emacs.d/ivan-face.el
--- a/lisp/emacs.d/ivan-face.el	Fri Feb 12 19:08:28 2010 +0100
+++ b/lisp/emacs.d/ivan-face.el	Fri Feb 12 19:46:24 2010 +0100
@@ -1,10 +1,30 @@
 ;;; ivan-face.el --- setup font faces
 
+(defvar ivan-face-background "black"
+  "background color")
+
+(defvar ivan-face-foreground "white"
+  "foreground color")
+
+(defvar ivan-face-cache nil
+  "cache used to reverse background color")
+
+(defun ivan-face-toggle-background ()
+  (interactive)
+  (if (string= ivan-face-background "black")
+      (setq ivan-face-background "white"
+            ivan-face-foreground "black")
+    (setq ivan-face-background "black"
+          ivan-face-foreground "white"))
+  (ivan-face-1 ivan-face-cache))
+
 (defmacro ivan-face (&rest list)
-  `(ivan-face-1 (quote ,list)))
+  `(ivan-face-1 (quote ,list) t))
 
-(defun ivan-face-1 (list)
-  (let (color reverse color-string)
+(defun ivan-face-1 (list &optional cache)
+  (if cache
+      (setq ivan-face-cache (append ivan-face-cache list)))
+  (let (face color reverse color-string)
     (while list
       (setq face (pop list)
             color (pop list)
@@ -15,25 +35,24 @@
               (symbol-name color)))
       (setq color-string
             (cond ((string= color-string "blue") "cyan")
...
 

break ivan-face-1 in two functions

File modified: lisp/emacs.d/ivan-face.el

Change200 at Fri Feb 12 19:08:28 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 5a967e67daf1 -r b594d4c3ce3e lisp/emacs.d/ivan-face.el
--- a/lisp/emacs.d/ivan-face.el	Fri Feb 12 18:51:48 2010 +0100
+++ b/lisp/emacs.d/ivan-face.el	Fri Feb 12 19:08:28 2010 +0100
@@ -4,7 +4,7 @@
   `(ivan-face-1 (quote ,list)))
 
 (defun ivan-face-1 (list)
-  (let (face color reverse color-string)
+  (let (color reverse color-string)
     (while list
       (setq face (pop list)
             color (pop list)
@@ -19,17 +19,21 @@
                   ((string= color-string "purple") "magenta")
                   ((string= color-string "underline") "white")
                   (t color-string)))
-      (make-face face)
-      (set-face-attribute
-       face nil
-       :background (if reverse color-string "black")
-       :box nil
-       :foreground (if reverse "black" color-string)
-       :inherit nil
-       :slant 'normal
-       :strike-through nil
-       :underline (eq color 'underline)
-       :weight 'normal))))
+      (ivan-face-2 color reverse color-string))))
+
+(defun ivan-face-2 (color reverse color-string)
+  (let (face)
+    (make-face face)
+    (set-face-attribute
+     face nil
+     :background (if reverse color-string "black")
+     :box nil
+     :foreground (if reverse "black" color-string)
+     :inherit nil
+     :slant 'normal
+     :strike-through nil
+     :underline (eq color 'underline)
...
 

quail fix compilation error

File modified: lisp/emacs.d/ivan-quail.el

Change199 at Fri Feb 12 18:51:48 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 6bfcf3a95df4 -r 5a967e67daf1 lisp/emacs.d/ivan-quail.el
--- a/lisp/emacs.d/ivan-quail.el	Fri Feb 12 18:51:08 2010 +0100
+++ b/lisp/emacs.d/ivan-quail.el	Fri Feb 12 18:51:48 2010 +0100
@@ -76,30 +76,26 @@
  ("~O" ?Œ)
  ("~a" ?æ)
  ("~c" ?°)
- ("~n" ?ñ)
- ("~o" ?œ)
- ("~p" ?¶)
- ("~s" ?§)
- ("~u" ?µ)
+ ("~o" ?œ))
 
- ;; Copyright (C) 2006  Ivan Kanis
- ;; Author: Ivan Kanis
- ;; $Id: init.el 2207 2008-04-24 03:19:22Z ivan $
- ;;
- ;; This program is free software ; you can redistribute it and/or modify
- ;; it under the terms of the GNU General Public License as published by
- ;; the Free Software Foundation ; either version 2 of the License, or
- ;; (at your option) any later version.
- ;;
- ;; This program is distributed in the hope that it will be useful, but
- ;; WITHOUT ANY WARRANTY ; without even the implied warranty of
- ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- ;; General Public License for more details.
- ;;
- ;; You should have received a copy of the GNU General Public License
- ;; along with this program ; if not, write to the Free Software
- ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+;; Copyright (C) 2006  Ivan Kanis
+;; Author: Ivan Kanis
+;; $Id: init.el 2207 2008-04-24 03:19:22Z ivan $
+;;
+;; This program is free software ; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation ; either version 2 of the License, or
+;; (at your option) any later version.
+;;
+;; This program is distributed in the hope that it will be useful, but
...
 

disable / expansion in quail

File modified: lisp/emacs.d/ivan-quail.el

Change198 at Fri Feb 12 18:51:08 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 20d0f536d16d -r 6bfcf3a95df4 lisp/emacs.d/ivan-quail.el
--- a/lisp/emacs.d/ivan-quail.el	Fri Feb 12 13:47:02 2010 +0100
+++ b/lisp/emacs.d/ivan-quail.el	Fri Feb 12 18:51:08 2010 +0100
@@ -16,104 +16,90 @@
 
     effect   | prefix | examples
  ------------+--------+----------
-    acute    |   '    | 'a -> á
+    acute    |   '    | 'e -> é 'c -> ç
     grave    |   `    | `a -> à
-  circumflex |   ^    | ^a -> â
-   cedilla   |   ,    | ,c -> ç
-    misc     |   ~    | ~a -> æ  ~o -> œ
-   symbol    |   /    | /e -> €  /p -> £  /y -> ¥ /o -> °
-   symbol    |   ~    | ~> -> »  ~< -> «
-             |   ~    | ~s -> §  ~. -> ·  ~u -> µ
-             |  _ /   | _: -> ÷  /c -> ¢  ~p -> ¶
-   symbol    |   ^    | ^r -> ®  ^c -> ©  ^1 -> ¹  ^2 -> ²  ^3 -> ³
+  circumflex |   ^    | ^a -> â  ^1 -> ¹  ^c -> ©
+    tilde    |   ~    | ~a -> æ  ~o -> œ  ~c ->
+    tilde    |   ~    | ~> -> »  ~< -> «
+  underscore |   _    | _/ -> ÷  _e -> €
 " nil t nil nil nil nil nil nil nil nil t)
 
 (quail-define-rules
+ ("' " ?')
  ("'C" ?Ç)
  ("'E" ?É)
  ("'c" ?ç)
  ("'e" ?é)
- ("' " ?')
- ("`A" ?À)
- ("`E" ?È)
- ("`a" ?à)
- ("`e" ?è)
- ("`u" ?ù)
- ("``" ?`)
- ("` " ?`)
- ("^a" ?â)
- ("^e" ?ê)
- ("^i" ?î)
...
 

add multiboot with grub

File modified: website/kanis.fr/cdinsert.muse website/kanis.fr/index.muse website/kanis.fr/multiboot-with-grub.muse website/kanis.fr/nterm.muse website/kanis.fr/pocketkanji.muse website/kanis.fr/svf.muse website/kanis.fr/winpack.muse

Change197 at Fri Feb 12 13:47:02 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r e2904ab03ddb -r 20d0f536d16d website/kanis.fr/winpack.muse
--- a/website/kanis.fr/winpack.muse	Fri Feb 12 12:11:54 2010 +0100
+++ b/website/kanis.fr/winpack.muse	Fri Feb 12 13:47:02 2010 +0100
@@ -40,4 +40,5 @@
 it from you command prompt and you should have all the tools at your
 disposition.
 
-[[projects][back]]
+[[download][back]]
+


 

make M-i N switch to newsticker buffer if it exits

newsticker, go to the next line after the date

File modified: lisp/emacs.d/ivan-newsticker.el

Change196 at Fri Feb 12 12:11:54 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r d96374f5ba01 -r e2904ab03ddb lisp/emacs.d/ivan-newsticker.el
--- a/lisp/emacs.d/ivan-newsticker.el	Thu Feb 11 19:42:57 2010 +0100
+++ b/lisp/emacs.d/ivan-newsticker.el	Fri Feb 12 12:11:54 2010 +0100
@@ -13,6 +13,7 @@
 (require 'ivan-face)
 (require 'ivan-gnus)
 (require 'ivan-keymap)
+(require 'ivan-fun)
 
 (eval-when-compile
   (require 'newsticker))
@@ -21,8 +22,7 @@
   "Start newsticker"
   (interactive)
   (require 'w3m)
-  (newsticker-show-news)
-  (newsticker-buffer-force-update))
+  (ivan-fun-start-or-switch 'newsticker-show-news "*newsticker*"))
 
 (defun ivan-newsticker-quit ()
   "Close the newsticker buffer."
@@ -40,6 +40,7 @@
 (setq
  newsticker-heading-format "%t"
  newsticker-item-format "%t"
+ newsticker-desc-format "%d\n%c"
  newsticker-hide-old-items-in-newsticker-buffer t
  newsticker-html-renderer 'w3m-region
  newsticker-frontend 'newsticker-plainview


 

emacs disable transient mode

File modified: lisp/emacs.d/ivan-start.el

Change195 at Thu Feb 11 19:42:57 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 20689c20847e -r d96374f5ba01 lisp/emacs.d/ivan-start.el
--- a/lisp/emacs.d/ivan-start.el	Thu Feb 11 19:38:42 2010 +0100
+++ b/lisp/emacs.d/ivan-start.el	Thu Feb 11 19:42:57 2010 +0100
@@ -13,6 +13,9 @@
 (menu-bar-no-scroll-bar)
 (tooltip-mode -1)
 
+;; turn off transient mark
+(transient-mark-mode -1)
+
 ;; no blinking cursor
 (blink-cursor-mode -1)
 


 

use gnus-unplugged when hitting a link in org

File modified: lisp/emacs.d/ivan-org.el

Change194 at Thu Feb 11 19:38:42 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 85d195aacc3d -r 20689c20847e lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Thu Feb 11 19:30:27 2010 +0100
+++ b/lisp/emacs.d/ivan-org.el	Thu Feb 11 19:38:42 2010 +0100
@@ -178,8 +178,7 @@
  org-hide-leading-stars t
  org-highlight-sparse-tree-matches nil
  org-log-done t
- org-link-frame-setup '((vm . vm-visit-folder-other-frame)
-                        (gnus . gnus)
+ org-link-frame-setup '((gnus . gnus-unplugged)
                         (file . find-file))
  org-highest-priority ?1
  org-default-priority ?2


 

RET is bound to newline-and-indent in *scratch*

File modified: lisp/emacs.d/ivan-lisp.el

Change193 at Thu Feb 11 19:30:27 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r f9797eb18e87 -r 85d195aacc3d lisp/emacs.d/ivan-lisp.el
--- a/lisp/emacs.d/ivan-lisp.el	Thu Feb 11 19:16:44 2010 +0100
+++ b/lisp/emacs.d/ivan-lisp.el	Thu Feb 11 19:30:27 2010 +0100
@@ -20,7 +20,7 @@
 (defun ivan-lisp-emacs-hook ()
   (ivan-keymap-keep-global emacs-lisp-mode-map)
   (ivan-common-code-key-binding emacs-lisp-mode-map)
-  (ivan-lisp-key-binding 'emacs-lisp-mode-map)
+  (ivan-lisp-key-binding emacs-lisp-mode-map)
   (unless (string= "*scratch*" (buffer-name))
     (outline-minor-mode))
   (ivan-common-code))
@@ -29,7 +29,7 @@
 
 (defun ivan-lisp-interaction-hook ()
   (ivan-lisp-key-binding lisp-interaction-mode-map)
-  (ivan-common-code-key-binding emacs-lisp-mode-map))
+  (ivan-common-code-key-binding lisp-interaction-mode-map))
 
 (add-hook 'lisp-interaction-mode-hook 'ivan-lisp-interaction-hook)
 


 

don't display load time of library

File modified: lisp/emacs.d/ivan-load.el

Change192 at Thu Feb 11 19:16:44 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 85aec3e1a04e -r f9797eb18e87 lisp/emacs.d/ivan-load.el
--- a/lisp/emacs.d/ivan-load.el	Thu Feb 11 13:09:14 2010 +0100
+++ b/lisp/emacs.d/ivan-load.el	Thu Feb 11 19:16:44 2010 +0100
@@ -1,6 +1,6 @@
 ;;; ivan-load.el --- library loading functions
 
-(defvar ivan-load-time t
+(defvar ivan-load-time nil
   "Set to t to display how long it takes for a library to load.")
 
 (defun ivan-load (file)


 

new e-mail address

File modified: website/kanis.fr/index.muse

Change191 at Thu Feb 11 13:09:14 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 85f08180461b -r 85aec3e1a04e website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Wed Feb 10 15:50:50 2010 +0100
+++ b/website/kanis.fr/index.muse	Thu Feb 11 13:09:14 2010 +0100
@@ -10,7 +10,7 @@
 J'aime jouer à de [[game-fr][bons jeux]] de temps en temps.
 
 Vous pouvez me joindre au +33 2 51 84 11 78 ou par e-mail à l'adresse
-suivante : =apple arobas kanis point fr=.
+suivante : =agile arobas kanis point fr=.
 
 * In English
 
@@ -22,9 +22,9 @@
  - things related to emacs [[blog-emacs][blog]], [[http://kanis.fr/blog-emacs.xml][RSS]][[http://kanis.fr/blog-emacs.xml][feed-icon-14x14.png]].
  - my Mercurial commit [[http://kanis.fr/hg.html][blog]], [[http://kanis.fr/hg.xml][RSS]][[http://kanis.fr/hg.xml][feed-icon-14x14.png]].
 
-There are pictures of a [[scotland-trip][holiday in Scotland]] back in 2001.
+I have pictures of a [[scotland-trip][holiday in Scotland]] back in 2001.
 
 You can contact me by phone +33 2 51 84 11 78 or by e-mail at the
-following address: =apple at kanis dot fr=.
+following address: =agile at kanis dot fr=.
 
 


 

sync mercurial

File modified: .hgignore bin/aps.bat bin/clean-zic.py bin/emacs.py bin/gfind.bat bin/ivan-screen-info.c bin/ivan-xterm.bat bin/ivanx.c bin/msgconvert.pl bin/setenv.sh bin/setup.sh bin/start.sh bin/timer.py bin/vi.bat bin/winmixer.py conf/badtz.png conf/efax conf/gnus.xpm conf/gtkrc-2.0 conf/ivan-xterm conf/ivan.png conf/mozpluggerrc conf/private-example.el conf/quotes.english conf/quotes.french conf/quotes.japanese conf/sawfish/lisp/sawfish/wm/placement/smart.jl conf/sawfish/themes/ivan/close-flat.png conf/sawfish/themes/ivan/minimize-flat.png conf/sawfish/themes/ivan/theme.jl conf/sawfishrc conf/screenrc conf/vm conf/xpdfrc info/Makefile info/bbdb.texinfo info/dir info/emacs-w3m.texi info/emms.texinfo info/muse.texi lisp/Makefile lisp/auctex/CHANGES lisp/auctex/Makefile lisp/auctex/auctex.el lisp/auctex/auctex.el.in lisp/auctex/bib-cite.el lisp/auctex/context-en.el lisp/auctex/context-nl.el lisp/auctex/context.el lisp/auctex/font-latex.el lisp/auctex/latex.el lisp/auctex/lpath.el lisp/auctex/multi-prompt.el lisp/auctex/style/.nosearch lisp/auctex/style/Makefile lisp/auctex/style/MinionPro.el lisp/auctex/style/alltt.el lisp/auctex/style/alphanum.el lisp/auctex/style/amsart.el lisp/auctex/style/amsbook.el lisp/auctex/style/amsbsy.el lisp/auctex/style/amsmath.el lisp/auctex/style/amsopn.el lisp/auctex/style/amstex.el lisp/auctex/style/amstext.el lisp/auctex/style/amsthm.el lisp/auctex/style/article.el lisp/auctex/style/babel.el lisp/auctex/style/beamer.el lisp/auctex/style/book.el lisp/auctex/style/booktabs.el lisp/auctex/style/captcont.el lisp/auctex/style/csquotes.el lisp/auctex/style/czech.el lisp/auctex/style/danish.el lisp/auctex/style/dinbrief.el lisp/auctex/style/dk-bib.el lisp/auctex/style/dk.el lisp/auctex/style/doc.el lisp/auctex/style/dutch.el lisp/auctex/style/emp.el lisp/auctex/style/epsf.el lisp/auctex/style/fancyref.el lisp/auctex/style/foils.el lisp/auctex/style/francais.el lisp/auctex/style/frenchb.el lisp/auctex/style/german.el lisp/auctex/style/graphics.el lisp/auctex/style/graphicx.el lisp/auctex/style/harvard.el lisp/auctex/style/index.el lisp/auctex/style/inputenc.el lisp/auctex/style/italian.el lisp/auctex/style/j-article.el lisp/auctex/style/j-book.el lisp/auctex/style/j-report.el lisp/auctex/style/jarticle.el lisp/auctex/style/jbook.el lisp/auctex/style/jreport.el lisp/auctex/style/jsarticle.el lisp/auctex/style/jsbook.el lisp/auctex/style/jura.el lisp/auctex/style/jurabib.el lisp/auctex/style/latexinfo.el lisp/auctex/style/letter.el lisp/auctex/style/listings.el lisp/auctex/style/ltx-base.el lisp/auctex/style/ltxdoc.el lisp/auctex/style/makeidx.el lisp/auctex/style/mdwlist.el lisp/auctex/style/multind.el lisp/auctex/style/natbib.el lisp/auctex/style/ngerman.el lisp/auctex/style/nicefrac.el lisp/auctex/style/paralist.el lisp/auctex/style/plfonts.el lisp/auctex/style/plhb.el lisp/auctex/style/prosper.el lisp/auctex/style/psfig.el lisp/auctex/style/report.el lisp/auctex/style/scrartcl.el lisp/auctex/style/scrbase.el lisp/auctex/style/scrbook.el lisp/auctex/style/scrlttr2.el lisp/auctex/style/scrpage2.el lisp/auctex/style/scrreprt.el lisp/auctex/style/slides.el lisp/auctex/style/slovak.el lisp/auctex/style/subfigure.el lisp/auctex/style/swedish.el lisp/auctex/style/units.el lisp/auctex/style/url.el lisp/auctex/style/varioref.el lisp/auctex/style/verbatim.el lisp/auctex/style/virtex.el lisp/auctex/tex-bar.el lisp/auctex/tex-buf.el lisp/auctex/tex-fold.el lisp/auctex/tex-font.el lisp/auctex/tex-fptex.el lisp/auctex/tex-info.el lisp/auctex/tex-jp.el lisp/auctex/tex-mik.el lisp/auctex/tex-site.el lisp/auctex/tex-site.el.in lisp/auctex/tex-site.el.out lisp/auctex/tex-style.el lisp/auctex/tex-wizard.el lisp/auctex/tex.el lisp/auctex/texmathp.el lisp/auctex/toolbar-x.el lisp/bbdb/Makefile lisp/bbdb/Makefile.in lisp/bbdb/bbdb-com.el lisp/bbdb/bbdb-ftp.el lisp/bbdb/bbdb-gnus.el lisp/bbdb/bbdb-gui.el lisp/bbdb/bbdb-hooks.el lisp/bbdb/bbdb-merge.el lisp/bbdb/bbdb-mhe.el lisp/bbdb/bbdb-migrate.el lisp/bbdb/bbdb-picture.el lisp/bbdb/bbdb-print.el lisp/bbdb/bbdb-reportmail.el lisp/bbdb/bbdb-rmail.el lisp/bbdb/bbdb-sc.el lisp/bbdb/bbdb-snarf.el lisp/bbdb/bbdb-srv.el lisp/bbdb/bbdb-vm.el lisp/bbdb/bbdb-w3.el lisp/bbdb/bbdb-whois.el lisp/bbdb/bbdb-xemacs.el lisp/bbdb/bbdb.el lisp/bbdb/loadpath.el lisp/edict/Makefile lisp/edict/dui-registry.el lisp/edict/dui.el lisp/edict/edict-edit.el lisp/edict/edict-english.el lisp/edict/edict-japanese.el lisp/edict/edict-morphology.el lisp/edict/edict-test.el lisp/edict/edict.el lisp/edict/ts-mode.el lisp/elim/AUTHORS lisp/elim/CHANGES lisp/elim/COPYING lisp/elim/MEDIA lisp/elim/README lisp/elim/TODO lisp/elim/data/init.el lisp/elim/doc/COPYING lisp/elim/doc/client-to-daemon.txt lisp/elim/doc/daemon-to-client.txt lisp/elim/doc/enumerations.txt lisp/elim/doc/protocol.txt lisp/elim/elim-client-queue.h lisp/elim/elim-client-utils.h lisp/elim/elim-client.c lisp/elim/elim-client.h lisp/elim/elim-func-handlers.h lisp/elim/elim-rpc.c lisp/elim/elim-rpc.h lisp/elim/elisp/Makefile lisp/elim/elisp/elim.el lisp/elim/elisp/garak.el lisp/elim/elisp/incomplete.el lisp/elim/elisp/lui.el lisp/elim/elisp/test.el lisp/elim/elisp/tracking.el lisp/elim/graphics/garak.svg lisp/elim/graphics/garak16.png lisp/elim/graphics/group.xcf lisp/elim/graphics/screenshot.png lisp/elim/handlers/README lisp/elim/handlers/account_menu.c lisp/elim/handlers/account_menu.h lisp/elim/handlers/account_menu_action.c lisp/elim/handlers/account_menu_action.h lisp/elim/handlers/account_options.c lisp/elim/handlers/account_options.h lisp/elim/handlers/add_account.c lisp/elim/handlers/add_account.h lisp/elim/handlers/add_buddy.c lisp/elim/handlers/add_buddy.h lisp/elim/handlers/add_chat.c lisp/elim/handlers/add_chat.h lisp/elim/handlers/buddy_menu.c lisp/elim/handlers/buddy_menu.h lisp/elim/handlers/buddy_menu_action.c lisp/elim/handlers/buddy_menu_action.h lisp/elim/handlers/chat_params.c lisp/elim/handlers/chat_params.h lisp/elim/handlers/command.c lisp/elim/handlers/command.h lisp/elim/handlers/connect.c lisp/elim/handlers/connect.h lisp/elim/handlers/debug_mode.c lisp/elim/handlers/debug_mode.h lisp/elim/handlers/default.c lisp/elim/handlers/default.h lisp/elim/handlers/disconnect.c lisp/elim/handlers/disconnect.h lisp/elim/handlers/end_conversation.c lisp/elim/handlers/end_conversation.h lisp/elim/handlers/enumerations.c lisp/elim/handlers/enumerations.h lisp/elim/handlers/get_prefs.c lisp/elim/handlers/get_prefs.h lisp/elim/handlers/init.c lisp/elim/handlers/init.h lisp/elim/handlers/join_chat.c lisp/elim/handlers/join_chat.h lisp/elim/handlers/list_accounts.c lisp/elim/handlers/list_accounts.h lisp/elim/handlers/list_protocols.c lisp/elim/handlers/list_protocols.h lisp/elim/handlers/message.c lisp/elim/handlers/message.h lisp/elim/handlers/register.c lisp/elim/handlers/register.h lisp/elim/handlers/remove_account.c lisp/elim/handlers/remove_account.h lisp/elim/handlers/remove_buddy.c lisp/elim/handlers/remove_buddy.h lisp/elim/handlers/response.c lisp/elim/handlers/response.h lisp/elim/handlers/set_account_options.c lisp/elim/handlers/set_account_options.h lisp/elim/handlers/set_prefs.c lisp/elim/handlers/set_prefs.h lisp/elim/handlers/status.c lisp/elim/handlers/status.h lisp/elim/handlers/unregister.c lisp/elim/handlers/unregister.h lisp/elim/icons/available.png lisp/elim/icons/away.png lisp/elim/icons/busy.png lisp/elim/icons/chat.png lisp/elim/icons/connecting.png lisp/elim/icons/extended-away.png lisp/elim/icons/garak.png lisp/elim/icons/group.png lisp/elim/icons/invisible.png lisp/elim/icons/log-in.png lisp/elim/icons/log-out.png lisp/elim/icons/off.png lisp/elim/icons/offline.png lisp/elim/icons/on.png lisp/elim/icons/person.png lisp/elim/icons/prpl-aim.png lisp/elim/icons/prpl-bonjour.png lisp/elim/icons/prpl-gg.png lisp/elim/icons/prpl-icq.png lisp/elim/icons/prpl-irc.png lisp/elim/icons/prpl-jabber.png lisp/elim/icons/prpl-meanwhile.png lisp/elim/icons/prpl-msn.png lisp/elim/icons/prpl-novell.png lisp/elim/icons/prpl-qq.png lisp/elim/icons/prpl-silc.png lisp/elim/icons/prpl-simple.png lisp/elim/icons/prpl-yahoo.png lisp/elim/icons/prpl-zephyr.png lisp/elim/icons/scratch/available0.png lisp/elim/icons/scratch/available1.png lisp/elim/icons/scratch/available2.png lisp/elim/make/README lisp/elim/prpl/README lisp/elim/prpl/util.c lisp/elim/prpl/util.h lisp/elim/sexp/README lisp/elim/sexp/sexp-util.c lisp/elim/sexp/sexp-util.h lisp/elim/sexp/sexp-xml.c lisp/elim/sexp/sexp-xml.h lisp/elim/ui_ops/README lisp/elim/ui_ops/account_ui_ops.c lisp/elim/ui_ops/account_ui_ops.h lisp/elim/ui_ops/blist_ui_ops.c lisp/elim/ui_ops/blist_ui_ops.h lisp/elim/ui_ops/connections_ui_ops.c lisp/elim/ui_ops/connections_ui_ops.h lisp/elim/ui_ops/conversation_ui_ops.c lisp/elim/ui_ops/conversation_ui_ops.h lisp/elim/ui_ops/core_ui_ops.c lisp/elim/ui_ops/core_ui_ops.h lisp/elim/ui_ops/default.m3u lisp/elim/ui_ops/eventloop_ui_ops.c lisp/elim/ui_ops/eventloop_ui_ops.h lisp/elim/ui_ops/idle_ui_ops.c lisp/elim/ui_ops/idle_ui_ops.h lisp/elim/ui_ops/request_ui_ops.c lisp/elim/ui_ops/request_ui_ops.h lisp/elim/xnode/README lisp/elim/xnode/xnode.c lisp/elim/xnode/xnode.h lisp/elisp.mk lisp/emacs.d/ivan-abbrev.el lisp/emacs.d/ivan-ack.el lisp/emacs.d/ivan-anki.el lisp/emacs.d/ivan-auctex.el lisp/emacs.d/ivan-autoinsert.el lisp/emacs.d/ivan-bbdb.el lisp/emacs.d/ivan-bs.el lisp/emacs.d/ivan-c.el lisp/emacs.d/ivan-calendar.el lisp/emacs.d/ivan-comint.el lisp/emacs.d/ivan-common-code.el lisp/emacs.d/ivan-compile.el lisp/emacs.d/ivan-dictionary.el lisp/emacs.d/ivan-diff.el lisp/emacs.d/ivan-dired.el lisp/emacs.d/ivan-emms.el lisp/emacs.d/ivan-english.el lisp/emacs.d/ivan-epg.el lisp/emacs.d/ivan-face.el lisp/emacs.d/ivan-flashcard.el lisp/emacs.d/ivan-flyspell.el lisp/emacs.d/ivan-font.el lisp/emacs.d/ivan-french.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-gnus.el lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-grep.el lisp/emacs.d/ivan-help.el lisp/emacs.d/ivan-ido.el lisp/emacs.d/ivan-info.el lisp/emacs.d/ivan-japanese.el lisp/emacs.d/ivan-keymap.el lisp/emacs.d/ivan-keyring.el lisp/emacs.d/ivan-lisp.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-lookup.el lisp/emacs.d/ivan-message.el lisp/emacs.d/ivan-mldonkey.el lisp/emacs.d/ivan-muse.el lisp/emacs.d/ivan-newsticker.el lisp/emacs.d/ivan-nterm.el lisp/emacs.d/ivan-nxml.el lisp/emacs.d/ivan-org.el lisp/emacs.d/ivan-outline.el lisp/emacs.d/ivan-perl.el lisp/emacs.d/ivan-psvn.el lisp/emacs.d/ivan-python.el lisp/emacs.d/ivan-quail.el lisp/emacs.d/ivan-quotes.el lisp/emacs.d/ivan-re-builder.el lisp/emacs.d/ivan-server.el lisp/emacs.d/ivan-shell.el lisp/emacs.d/ivan-speedbar.el lisp/emacs.d/ivan-start.el lisp/emacs.d/ivan-term.el lisp/emacs.d/ivan-tetris.el lisp/emacs.d/ivan-var.el lisp/emacs.d/ivan-vcursor.el lisp/emacs.d/ivan-w3m.el lisp/emacs.d/ivan-warning.el lisp/emacs.d/ivan-woman.el lisp/emms/AUTHORS lisp/emms/COPYING lisp/emms/ChangeLog lisp/emms/FAQ lisp/emms/Makefile lisp/emms/NEWS lisp/emms/README lisp/emms/RELEASE lisp/emms/emms-auto.in lisp/emms/emms-bookmarks.el lisp/emms/emms-browser.el lisp/emms/emms-cache.el lisp/emms/emms-compat.el lisp/emms/emms-history.el lisp/emms/emms-i18n.el lisp/emms/emms-info-libtag.el lisp/emms/emms-info-mp3info.el lisp/emms/emms-info-ogg.el lisp/emms/emms-info-ogginfo.el lisp/emms/emms-info-oggperl.el lisp/emms/emms-info.el lisp/emms/emms-last-played.el lisp/emms/emms-lastfm.el lisp/emms/emms-lyrics.el lisp/emms/emms-maint.el lisp/emms/emms-mark.el lisp/emms/emms-metaplaylist-mode.el lisp/emms/emms-mode-line-icon.el lisp/emms/emms-mode-line.el lisp/emms/emms-player-mpd.el lisp/emms/emms-player-mpg321-remote.el lisp/emms/emms-player-mplayer.el lisp/emms/emms-player-simple.el lisp/emms/emms-player-xine.el lisp/emms/emms-playing-time.el lisp/emms/emms-playlist-mode.el lisp/emms/emms-playlist-sort.el lisp/emms/emms-print-metadata.1 lisp/emms/emms-print-metadata.c lisp/emms/emms-score.el lisp/emms/emms-setup.el lisp/emms/emms-source-file.el lisp/emms/emms-source-playlist.el lisp/emms/emms-stream-info.el lisp/emms/emms-streams.el lisp/emms/emms-tag-editor.el lisp/emms/emms-url.el lisp/emms/emms-volume-amixer.el lisp/emms/emms-volume.el lisp/emms/emms.el lisp/emms/emms.texinfo lisp/emms/fdl.texi lisp/emms/gpl.texi lisp/emms/gst-wrapper lisp/emms/jack.el lisp/emms/later-do.el lisp/emms/ogg-comment.el lisp/emms/tq.el lisp/haskell/ChangeLog lisp/haskell/Makefile lisp/haskell/NEWS lisp/haskell/README lisp/haskell/fontlock.hs lisp/haskell/haskell-c.el lisp/haskell/haskell-cabal.el lisp/haskell/haskell-decl-scan.el lisp/haskell/haskell-doc.el lisp/haskell/haskell-font-lock.el lisp/haskell/haskell-ghci.el lisp/haskell/haskell-hugs.el lisp/haskell/haskell-indent.el lisp/haskell/haskell-mode.el lisp/haskell/haskell-simple-indent.el lisp/haskell/indent.hs lisp/haskell/inf-haskell.el lisp/ivan-autoload.el lisp/ivan/Makefile lisp/ivan/keyring.el lisp/ivan/normal.txt lisp/ivan/nterm-gr.el lisp/ivan/nterm.el lisp/ivan/realplay.el lisp/ivan/special.txt lisp/ivan/wclock.el lisp/lookup/ChangeLog lisp/lookup/Makefile lisp/lookup/Makefile.in lisp/lookup/README lisp/lookup/VERSION lisp/lookup/evi-mule.el lisp/lookup/evi.el lisp/lookup/lookup-compile.el lisp/lookup/lookup-content.el lisp/lookup/lookup-entry.el lisp/lookup/lookup-kanji.el lisp/lookup/lookup-logo.xbm lisp/lookup/lookup-logo.xpm lisp/lookup/lookup-package.el lisp/lookup/lookup-select.el lisp/lookup/lookup-types.el lisp/lookup/lookup-utils.el lisp/lookup/lookup-vars.el lisp/lookup/lookup-vse.el lisp/lookup/lookup.el lisp/lookup/ndcookie.el lisp/lookup/ndeb-binary.el lisp/lookup/ndeb.el lisp/lookup/ndic.el lisp/lookup/ndict.el lisp/lookup/ndkks.el lisp/lookup/ndmisc.el lisp/lookup/ndnmz.el lisp/lookup/ndspell.el lisp/lookup/ndsrd.el lisp/lookup/ndtp.el lisp/lookup/sdicf.el lisp/lookup/stem-english.el lisp/misc/anki.el lisp/misc/appt.el lisp/misc/auto-lang.el lisp/misc/boxquote.el lisp/misc/cmd-mode.el lisp/misc/column-marker.el lisp/misc/erc-goodies.el lisp/misc/fc.el lisp/misc/flashcard-sm5.el lisp/misc/flashcard.el lisp/misc/full-ack.el lisp/misc/gcalc.el lisp/misc/lastfm-submit.el lisp/misc/message.el lisp/misc/nnir.el lisp/misc/php-mode.el lisp/misc/pop3.el lisp/misc/psvn.el lisp/misc/pwsafe.el lisp/misc/python.el lisp/misc/quotes.el lisp/misc/sawfish.el lisp/misc/sqlplus.el lisp/misc/ssl.el lisp/misc/sudo-save.el lisp/misc/swbuff-x.el lisp/misc/swbuff.el lisp/misc/sym-comp.el lisp/misc/term.el lisp/misc/time.el lisp/misc/volume.el lisp/misc/whitespace.el lisp/muse/Makefile lisp/muse/htmlize.el lisp/muse/muse-backlink.el lisp/muse/muse-blosxom.el lisp/muse/muse-book.el lisp/muse/muse-colors.el lisp/muse/muse-context.el lisp/muse/muse-docbook.el lisp/muse/muse-groff.el lisp/muse/muse-html.el lisp/muse/muse-http.el lisp/muse/muse-ikiwiki.el lisp/muse/muse-import-docbook.el lisp/muse/muse-import-latex.el lisp/muse/muse-import-xml.el lisp/muse/muse-journal.el lisp/muse/muse-latex.el lisp/muse/muse-latex2png.el lisp/muse/muse-mode.el lisp/muse/muse-poem.el lisp/muse/muse-project.el lisp/muse/muse-protocols.el lisp/muse/muse-publish.el lisp/muse/muse-regexps.el lisp/muse/muse-texinfo.el lisp/muse/muse-wiki.el lisp/muse/muse-xml-common.el lisp/muse/muse-xml.el lisp/muse/muse.el lisp/newsticker/Makefile lisp/newsticker/newst-backend.el lisp/newsticker/newst-plainview.el lisp/newsticker/newst-reader.el lisp/newsticker/newst-ticker.el lisp/newsticker/newst-treeview.el lisp/newsticker/newsticker-testsuite.el lisp/newsticker/newsticker.el lisp/newsticker/newsticker.texi lisp/org/ChangeLog lisp/org/Makefile lisp/org/org-agenda.el lisp/org/org-archive.el lisp/org/org-ascii.el lisp/org/org-attach.el lisp/org/org-bbdb.el lisp/org/org-bibtex.el lisp/org/org-clock.el lisp/org/org-colview-xemacs.el lisp/org/org-colview.el lisp/org/org-compat.el lisp/org/org-docbook.el lisp/org/org-exp.el lisp/org/org-faces.el lisp/org/org-feed.el lisp/org/org-footnote.el lisp/org/org-gnus.el lisp/org/org-html.el lisp/org/org-icalendar.el lisp/org/org-id.el lisp/org/org-info.el lisp/org/org-inlinetask.el lisp/org/org-install.el lisp/org/org-irc.el lisp/org/org-jsinfo.el lisp/org/org-latex.el lisp/org/org-list.el lisp/org/org-mac-message.el lisp/org/org-macs.el lisp/org/org-mew.el lisp/org/org-mhe.el lisp/org/org-mouse.el lisp/org/org-plot.el lisp/org/org-protocol.el lisp/org/org-publish.el lisp/org/org-remember.el lisp/org/org-rmail.el lisp/org/org-table.el lisp/org/org-timer.el lisp/org/org-vm.el lisp/org/org-w3m.el lisp/org/org-wl.el lisp/org/org-xoxo.el lisp/org/org.el lisp/remember/ChangeLog lisp/remember/ChangeLog.1 lisp/remember/Makefile lisp/remember/read-file-name.el lisp/remember/remember-bbdb.el lisp/remember/remember-bibl.el lisp/remember/remember-blosxom.el lisp/remember/remember-diary.el lisp/remember/remember-el.texi lisp/remember/remember-emacs-wiki-journal.el lisp/remember/remember-experimental.el lisp/remember/remember-planner.el lisp/remember/remember.el lisp/slime/ChangeLog lisp/slime/HACKING lisp/slime/Makefile lisp/slime/NEWS lisp/slime/PROBLEMS lisp/slime/README lisp/slime/contrib/ChangeLog lisp/slime/contrib/Makefile lisp/slime/contrib/README lisp/slime/contrib/bridge.el lisp/slime/contrib/inferior-slime.el lisp/slime/contrib/slime-asdf.el lisp/slime/contrib/slime-autodoc.el lisp/slime/contrib/slime-banner.el lisp/slime/contrib/slime-c-p-c.el lisp/slime/contrib/slime-clipboard.el lisp/slime/contrib/slime-compiler-notes-tree.el lisp/slime/contrib/slime-editing-commands.el lisp/slime/contrib/slime-enclosing-context.el lisp/slime/contrib/slime-fancy-inspector.el lisp/slime/contrib/slime-fancy.el lisp/slime/contrib/slime-fontifying-fu.el lisp/slime/contrib/slime-fuzzy.el lisp/slime/contrib/slime-highlight-edits.el lisp/slime/contrib/slime-indentation-fu.el lisp/slime/contrib/slime-indentation.el lisp/slime/contrib/slime-mdot-fu.el lisp/slime/contrib/slime-motd.el lisp/slime/contrib/slime-mrepl.el lisp/slime/contrib/slime-package-fu.el lisp/slime/contrib/slime-parse.el lisp/slime/contrib/slime-presentation-streams.el lisp/slime/contrib/slime-presentations.el lisp/slime/contrib/slime-references.el lisp/slime/contrib/slime-repl.el lisp/slime/contrib/slime-sbcl-exts.el lisp/slime/contrib/slime-scheme.el lisp/slime/contrib/slime-scratch.el lisp/slime/contrib/slime-tramp.el lisp/slime/contrib/slime-typeout-frame.el lisp/slime/contrib/slime-xref-browser.el lisp/slime/contrib/swank-arglists.lisp lisp/slime/contrib/swank-asdf.lisp lisp/slime/contrib/swank-c-p-c.lisp lisp/slime/contrib/swank-clipboard.lisp lisp/slime/contrib/swank-fancy-inspector.lisp lisp/slime/contrib/swank-fuzzy.lisp lisp/slime/contrib/swank-goo.goo lisp/slime/contrib/swank-indentation-fu.lisp lisp/slime/contrib/swank-indentation.lisp lisp/slime/contrib/swank-jolt.k lisp/slime/contrib/swank-kawa.scm lisp/slime/contrib/swank-listener-hooks.lisp lisp/slime/contrib/swank-mit-scheme.scm lisp/slime/contrib/swank-motd.lisp lisp/slime/contrib/swank-package-fu.lisp lisp/slime/contrib/swank-presentation-streams.lisp lisp/slime/contrib/swank-presentations.lisp lisp/slime/contrib/swank-sbcl-exts.lisp lisp/slime/contrib/swank.rb lisp/slime/hyperspec.el lisp/slime/metering.lisp lisp/slime/nregex.lisp lisp/slime/sbcl-pprint-patch.lisp lisp/slime/slime.el lisp/slime/swank-abcl.lisp lisp/slime/swank-allegro.lisp lisp/slime/swank-backend.lisp lisp/slime/swank-clisp.lisp lisp/slime/swank-cmucl.lisp lisp/slime/swank-corman.lisp lisp/slime/swank-ecl.lisp lisp/slime/swank-gray.lisp lisp/slime/swank-lispworks.lisp lisp/slime/swank-loader.lisp lisp/slime/swank-openmcl.lisp lisp/slime/swank-sbcl.lisp lisp/slime/swank-scl.lisp lisp/slime/swank-source-file-cache.lisp lisp/slime/swank-source-path-parser.lisp lisp/slime/swank.asd lisp/slime/swank.lisp lisp/slime/xref.lisp lisp/w3m/Makefile lisp/w3m/mew-w3m.el lisp/w3m/mime-w3m.el lisp/w3m/mkinstalldirs lisp/w3m/octet.el lisp/w3m/w3m-antenna.el lisp/w3m/w3m-bitmap.el lisp/w3m/w3m-bookmark.el lisp/w3m/w3m-bug.el lisp/w3m/w3m-ccl.el lisp/w3m/w3m-cookie.el lisp/w3m/w3m-dtree.el lisp/w3m/w3m-e19.el lisp/w3m/w3m-e20.el lisp/w3m/w3m-e21.el lisp/w3m/w3m-ems.el lisp/w3m/w3m-favicon.el lisp/w3m/w3m-fb.el lisp/w3m/w3m-filter.el lisp/w3m/w3m-form.el lisp/w3m/w3m-fsf.el lisp/w3m/w3m-hist.el lisp/w3m/w3m-image.el lisp/w3m/w3m-lnum.el lisp/w3m/w3m-mail.el lisp/w3m/w3m-namazu.el lisp/w3m/w3m-om.el lisp/w3m/w3m-perldoc.el lisp/w3m/w3m-proc.el lisp/w3m/w3m-rss.el lisp/w3m/w3m-search.el lisp/w3m/w3m-session.el lisp/w3m/w3m-symbol.el lisp/w3m/w3m-tabmenu.el lisp/w3m/w3m-ucs.el lisp/w3m/w3m-util.el lisp/w3m/w3m-weather.el lisp/w3m/w3m-xmas.el lisp/w3m/w3m.el lisp/w3m/w3mhack.el lisp/wget/ChangeLog lisp/wget/Makefile lisp/wget/README lisp/wget/USAGE lisp/wget/wget-sysdep.el lisp/wget/wget.el tex/500-album.ltx tex/fr-survival.tex tex/linux-laptop.ltx tex/pdflayout.sty website/Makefile website/patch/xscreensaver.patch website/resume/Makefile website/resume/XMLSchema.dtd website/resume/cv.pl website/resume/datatypes.dtd website/resume/docbook.pl website/resume/docbook.tmpl website/resume/en/dummy website/resume/fr/dummy website/resume/getlang.pl website/resume/getlang.sed website/resume/html.pl website/resume/html.tmpl website/resume/latex.pl website/resume/latex.tmpl website/resume/makeopt.pl website/resume/mugshot.jpg website/resume/muse.tmpl website/resume/pdf.pl website/resume/resume.xml website/resume/resume.xsd website/resume/rtf.pl website/resume/rtf.tmpl

Change190 at Wed Feb 10 15:50:50 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 019c97881784 -r 85f08180461b lisp/emacs.d/ivan-load.el
--- a/lisp/emacs.d/ivan-load.el	Wed Feb 10 15:49:40 2010 +0100
+++ b/lisp/emacs.d/ivan-load.el	Wed Feb 10 15:50:50 2010 +0100
@@ -1,6 +1,6 @@
 ;;; ivan-load.el --- library loading functions
 
-(defvar ivan-load-time nil
+(defvar ivan-load-time t
   "Set to t to display how long it takes for a library to load.")
 
 (defun ivan-load (file)


 

xcscope customisation

File modified: lisp/emacs.d/ivan-xcscope.el

Change189 at Wed Feb 10 15:49:40 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 2cae72b25255 -r 019c97881784 lisp/emacs.d/ivan-xcscope.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/emacs.d/ivan-xcscope.el	Wed Feb 10 15:49:40 2010 +0100
@@ -0,0 +1,79 @@
+;;; ivan-xcscope.el --- cscope support
+
+;;; Commentary:
+
+;;; THANKS:
+
+;;; BUGS:
+
+;;; INSTALLATION:
+
+;;; Code:
+
+(require 'ivan-keymap)
+(require 'ivan-face)
+(eval-when-compile
+  (defvar cscope:map))
+
+;; prevent xcscope from polluting C-c s
+(setq cscope:map (make-keymap))
+(require 'xcscope)
+
+(defvar ivan-xcscope-key-map
+  "xcscope keymap")
+
+(ivan-keymap-prefix
+ ivan-xcscope-key-map
+ "s" 'cscope-find-this-symbol
+ "d" 'cscope-find-global-definition
+ "g" 'cscope-find-global-definition
+ "G" 'cscope-find-global-definition-no-prompting
+ "c" 'cscope-find-functions-calling-this-function
+ "C" 'cscope-find-called-functions
+ "t" 'cscope-find-this-text-string
+ "e" 'cscope-find-egrep-pattern
+ "f" 'cscope-find-this-file
+ "i" 'cscope-find-files-including-file
+ "b" 'cscope-display-buffer
...
 

compile xcscope

File modified: lisp/emacs.d/Makefile

Change188 at Wed Feb 10 15:37:21 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r c9acaac3c9ec -r 2cae72b25255 lisp/emacs.d/Makefile
--- a/lisp/emacs.d/Makefile	Wed Feb 10 15:22:01 2010 +0100
+++ b/lisp/emacs.d/Makefile	Wed Feb 10 15:37:21 2010 +0100
@@ -74,11 +74,11 @@
 ivan-shell.el \
 ivan-start.el \
 ivan-term.el \
-ivan-tetris.el \
 ivan-vcursor.el \
 ivan-w3m.el \
 ivan-windows.el \
-ivan-woman.el
+ivan-woman.el \
+ivan-xcscope.el
 
 # remove no-run-time function warnings
 EMACSARG = -l ivan-warning.el


 

load xcscope at start up

File modified: lisp/emacs.d/init.el

Change187 at Wed Feb 10 15:22:01 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 1a40eeeb0241 -r c9acaac3c9ec lisp/emacs.d/init.el
--- a/lisp/emacs.d/init.el	Wed Feb 10 15:14:47 2010 +0100
+++ b/lisp/emacs.d/init.el	Wed Feb 10 15:22:01 2010 +0100
@@ -73,10 +73,10 @@
              "re-builder"
              "speedbar"
              "term"
-             "tetris"
              "w3m"
              "windows"
-             "woman"))
+             "woman"
+             "xcscope"))
 
 ;; start gnus for Lucia
 (when (eq ivan-var-user 'lucia)


 

compile xcscope

File modified: lisp/misc/Makefile

Change186 at Wed Feb 10 15:14:47 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 40cd0a8466b5 -r 1a40eeeb0241 lisp/misc/Makefile
--- a/lisp/misc/Makefile	Wed Feb 10 15:00:45 2010 +0100
+++ b/lisp/misc/Makefile	Wed Feb 10 15:14:47 2010 +0100
@@ -43,7 +43,8 @@
 swbuff-x.el \
 whitespace.el \
 time.el \
-volume.el
+volume.el \
+xcscope.el
 
 ELC = ${SRC:.el=.elc}
 


 

xcscope add recurse option

File modified: lisp/misc/xcscope.el

Change185 at Wed Feb 10 15:00:45 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 15294777bee1 -r 40cd0a8466b5 lisp/misc/xcscope.el
--- a/lisp/misc/xcscope.el	Wed Feb 10 14:56:48 2010 +0100
+++ b/lisp/misc/xcscope.el	Wed Feb 10 15:00:45 2010 +0100
@@ -1908,7 +1908,7 @@
     (save-excursion
       (catch 'finished
 	(set-buffer outbuf)
-	(setq options '("-L"))
+	(setq options '("-L" "-R"))
 	(while (and (not done) cscope-search-list)
 	  (setq next-item (car cscope-search-list)
 		cscope-search-list (cdr cscope-search-list)


 

emacs xcscope

File modified: lisp/misc/xcscope.el

Change184 at Wed Feb 10 14:56:48 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r a5f5c2ddeccf -r 15294777bee1 lisp/misc/xcscope.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/misc/xcscope.el	Wed Feb 10 14:56:48 2010 +0100
@@ -0,0 +1,2463 @@
+; -*-Emacs-Lisp-*-
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;
+; File:         xcscope.el
+; RCS:          $RCSfile: xcscope.el,v $ $Revision: 1.14 $ $Date: 2002/04/10 16:59:00 $ $Author: darrylo $
+; Description:  cscope interface for (X)Emacs
+; Author:       Darryl Okahata
+; Created:      Wed Apr 19 17:03:38 2000
+; Modified:     Thu Apr  4 17:22:22 2002 (Darryl Okahata) darrylo@soco.agilent.com
+; Language:     Emacs-Lisp
+; Package:      N/A
+; Status:       Experimental
+;
+; (C) Copyright 2000, 2001, 2002, Darryl Okahata <darrylo@sonic.net>,
+;     all rights reserved.
+; GNU Emacs enhancements (C) Copyright 2001,
+;         Triet H. Lai <thlai@mail.usyd.edu.au>
+; Fuzzy matching and navigation code (C) Copyright 2001,
+;         Steven Elliott <selliott4@austin.rr.com>
+;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; ALPHA VERSION 0.96
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation; either version 2, or (at your option)
+;; any later version.
+;;
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+;;
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs; see the file COPYING.  If not, write to
+;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
...
 

add package for japanese dictionary

File modified: bin/setup.sh

Change183 at Tue Feb 09 17:54:50 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 865562fa8b95 -r a5f5c2ddeccf bin/setup.sh
--- a/bin/setup.sh	Tue Feb 09 17:47:20 2010 +0100
+++ b/bin/setup.sh	Tue Feb 09 17:54:50 2010 +0100
@@ -2,18 +2,22 @@
     yum install \
 apr-devel \
 apr-util-devel \
+aspell-en \
 aspell-fr \
 bzip2-devel \
+eblook \
 freetype-devel \
 fuse \
 giflib-devel \
 gnutls \
 gnutls-utils \
 httpd-devel \
+kakasi \
 libX11-devel \
 libXpm-devel \
 libjpeg-devel \
 libpng-devel \
+libpurple-devel \
 libtiff-devel \
 libxml2-devel \
 mp3info \
@@ -130,8 +134,8 @@
 PORTABLE_DIR=/media/Iomega_HDD/keep/
 if test X$(id -u) == X0
 then
-    which yum > /dev/null 2> /dev/null
-    if [ $? -eq 0 ]
+    which yum > /dev/null 2>&1
+    if test X$? == X0
     then
         yum_install
     fi


 

fix typo

File modified: website/kanis.fr/svf.muse

Change182 at Tue Feb 09 17:47:20 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 750a4cd53fc3 -r 865562fa8b95 website/kanis.fr/svf.muse
--- a/website/kanis.fr/svf.muse	Tue Feb 09 17:46:45 2010 +0100
+++ b/website/kanis.fr/svf.muse	Tue Feb 09 17:47:20 2010 +0100
@@ -12,7 +12,7 @@
 * Download
 
 [[svf-0.1.tar.bz2][Download]] version 0.1. The software comes with a bunch of PHPunit tests
-that are not included. The tests scripts can be downloaded [[http://kanis.fr/hg/svf][here]].
+that are not included. The test scripts can be downloaded [[http://kanis.fr/hg/svf][here]].
 
 * Basics
 


 

add bit about test units

File modified: website/kanis.fr/svf.muse

Change181 at Tue Feb 09 17:46:45 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 2d833aabdc58 -r 750a4cd53fc3 website/kanis.fr/svf.muse
--- a/website/kanis.fr/svf.muse	Tue Feb 09 17:44:40 2010 +0100
+++ b/website/kanis.fr/svf.muse	Tue Feb 09 17:46:45 2010 +0100
@@ -11,7 +11,8 @@
 
 * Download
 
-[[svf-0.1.tar.bz2][Download]] version 0.1.
+[[svf-0.1.tar.bz2][Download]] version 0.1. The software comes with a bunch of PHPunit tests
+that are not included. The tests scripts can be downloaded [[http://kanis.fr/hg/svf][here]].
 
 * Basics
 


 

add php in portfolio

File modified: website/kanis.fr/portfolio.muse

Change180 at Tue Feb 09 17:44:40 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 2773a230d4fd -r 2d833aabdc58 website/kanis.fr/portfolio.muse
--- a/website/kanis.fr/portfolio.muse	Tue Feb 09 17:28:24 2010 +0100
+++ b/website/kanis.fr/portfolio.muse	Tue Feb 09 17:44:40 2010 +0100
@@ -10,7 +10,7 @@
 ncurse. Il y du management de thread, une fonction récursive et de
 l'abstraction d'objet pour l'interface graphique.
 
-Je connais également Perl. Voici le [[http://kanis.fr/hg/website/resume/cv.pl][script]] qui génère mon CV. Il y a
+Je suis familier avec Perl. Voici le [[http://kanis.fr/hg/website/resume/cv.pl][script]] qui génère mon CV. Il y a
 lecture du document XML en deux langues. Ensuite j'utilise la
 bibliothèque template pour générer différentes sortie : PDF, HTML,
 DocBook, etc... Il y a énormément de référence de hash et de tableau.
@@ -19,15 +19,17 @@
 ans. [[http://kanis.fr/hg/pkdic/font.c][Voici un extrait]] de PocketKanji qui affiche des caractères
 Japonais.
 
-Mon outil de programmation étant Emacs, il est presque naturel que je
-connaisse Lisp. J'ai écrit plusieurs module qui font parties de Emacs
-telle que le support de Mercurial et une horloge mondiale. J'ai écrit un
+J'ai écris un framework en PHP appelé [[svf][SVF]], la méthodologie que
+j'utilise est TDD (Test Driven Developpment). Le logiciel a une
+batterie de test qui facilite le refactoring.
+
+Mon outil de programmation étant Emacs je suis naturellement attiré
+par le Lisp. J'ai écrit plusieurs modules qui font parties de Emacs
+telles que le support de Mercurial et une horloge mondiale. J'ai écrit un
 [[http://kanis.fr/hg/lisp/ivan/nterm.el][projet conséquent]] d'émulateur de terminal en Lisp.
 
-J'ai également écrit du PHP et du C++, malheureusement je ne peux pas
-fournir d'exemple car c'est du code commercial pour des
-entreprises. J'ai étudié Common Lisp et Haskell pour étendre ma vision
-de la programmation.
+J'ai étudié Common Lisp et Haskell pour étendre ma vision
+de la programmation mais je ne pretendrais pas les maîtriser.
 
 [[index][retour]]
 


 

script to debug thunderbird

File modified: bin/debug-thunderbird.sh

Change179 at Tue Feb 09 17:28:24 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 312862c45ac6 -r 2773a230d4fd bin/debug-thunderbird.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/debug-thunderbird.sh	Tue Feb 09 17:28:24 2010 +0100
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+MYDATE=`date "+%Y%m%d_%H%M%S"`
+NSPR_LOG_MODULES=SMTP:5
+NSPR_LOG_FILE=/tmp/thunderbird_${MYDATE}.log
+export NSPR_LOG_MODULES NSPR_LOG_FILE
+thunderbird &


 

jiggle web page

File modified: website/kanis.fr/1.png website/kanis.fr/2.png website/kanis.fr/3.png website/kanis.fr/4.png website/kanis.fr/6.png website/kanis.fr/7.png website/kanis.fr/8.png website/kanis.fr/9.png website/kanis.fr/Makefile website/kanis.fr/appartment-bath-tub.jpg website/kanis.fr/appartment-bathroom.jpg website/kanis.fr/appartment-bedroom-1.jpg website/kanis.fr/appartment-bedroom-2.jpg website/kanis.fr/appartment-entrance.jpg website/kanis.fr/appartment-kitchen-1.jpg website/kanis.fr/appartment-kitchen.jpg website/kanis.fr/appartment-living-room.jpg website/kanis.fr/appartment.muse website/kanis.fr/b.png website/kanis.fr/background-line.jpg website/kanis.fr/background-line.xcf website/kanis.fr/bbdb-picture.png website/kanis.fr/bishop-palace.muse website/kanis.fr/bishop_castle_tuna.jpg website/kanis.fr/bishop_palace.jpg website/kanis.fr/blog-emacs.muse website/kanis.fr/blog-fr.muse website/kanis.fr/c.png website/kanis.fr/camping_in_inverness.jpg website/kanis.fr/camster-cairns.muse website/kanis.fr/camster_big_cairn.jpg website/kanis.fr/camster_cairns_chamber.jpg website/kanis.fr/camster_cairns_overview.jpg website/kanis.fr/camster_cairns_tuna_going_in.jpg website/kanis.fr/camster_cairns_tuna_looking_back.jpg website/kanis.fr/camster_cairns_tunnel.jpg website/kanis.fr/castle_simon.jpg website/kanis.fr/cdinsert.muse website/kanis.fr/cdinserts.jpg website/kanis.fr/clava_cairns.muse website/kanis.fr/clava_cairns_margot_and_tuna_going_around_stone.jpg website/kanis.fr/clava_cairns_margot_inside.jpg website/kanis.fr/clava_cairns_pox_mark_rock.jpg website/kanis.fr/clava_cairns_standing_stone.jpg website/kanis.fr/clava_cairns_tuna_running_in.jpg website/kanis.fr/clava_cairns_view_of_both_cairns.jpg website/kanis.fr/clava_cairns_view_of_one_cairn.jpg website/kanis.fr/conversion.png website/kanis.fr/crossover.png website/kanis.fr/dad.muse website/kanis.fr/dad_leaning_on_gate.jpg website/kanis.fr/daily-mirror-bush.jpg website/kanis.fr/dbtomcat.png website/kanis.fr/doom.png website/kanis.fr/doomrl.png website/kanis.fr/download.muse website/kanis.fr/emacs-erc-lookup.png website/kanis.fr/emacs-gradient-face.png website/kanis.fr/emacs.muse website/kanis.fr/emptydiv.pl website/kanis.fr/feed-icon-14x14.png website/kanis.fr/ferry.muse website/kanis.fr/ferry_margot_tuna.jpg website/kanis.fr/game-en.muse website/kanis.fr/game-fr.muse website/kanis.fr/hadrian-wall.muse website/kanis.fr/hadrian_wall_crag_ivan.jpg website/kanis.fr/hadrian_wall_detail.jpg website/kanis.fr/hadrian_wall_foot_and_mouth.jpg website/kanis.fr/hadrian_wall_housestead_fort_bath.jpg website/kanis.fr/hadrian_wall_view.jpg website/kanis.fr/helixbbc.png website/kanis.fr/highland-road.muse website/kanis.fr/highland_road.jpg website/kanis.fr/hill.muse website/kanis.fr/ik16.png website/kanis.fr/ik16.xcf website/kanis.fr/input.png website/kanis.fr/inverness-camping.muse website/kanis.fr/kanis.css website/kanis.fr/kirkwall-tombstone.muse website/kanis.fr/le-chat-1.gif website/kanis.fr/le-chat-2.gif website/kanis.fr/le-chat-3.gif website/kanis.fr/le-chat-4.gif website/kanis.fr/le-chat-5.gif website/kanis.fr/le-chat-6.gif website/kanis.fr/le-chat-7.gif website/kanis.fr/le-chat.muse website/kanis.fr/lookup.png website/kanis.fr/lothian_ivan_relaxing.jpg website/kanis.fr/make.common website/kanis.fr/make.var website/kanis.fr/margot.muse website/kanis.fr/mugshot.jpg website/kanis.fr/nterm-aptitude.png website/kanis.fr/nterm-double.png website/kanis.fr/nterm.muse website/kanis.fr/nterm.png website/kanis.fr/nxml.png website/kanis.fr/old-man-of-hoy.muse website/kanis.fr/old_man_of_hoy.jpg website/kanis.fr/picnic_dad.jpg website/kanis.fr/pocketkanji-0.4.11.zip website/kanis.fr/pocketkanji-manual.muse website/kanis.fr/pocketkanji.muse website/kanis.fr/pocketkanji.png website/kanis.fr/portfolio.muse website/kanis.fr/publish.el website/kanis.fr/radio.muse website/kanis.fr/ring-of-brogar.muse website/kanis.fr/ring-of-stenness.muse website/kanis.fr/ring_of_brogar_2stones_lake.jpg website/kanis.fr/ring_of_brogar_5stones.jpg website/kanis.fr/ring_of_brogar_9stones_and_fallen_stone.jpg website/kanis.fr/ring_of_brogar_mound.jpg website/kanis.fr/ring_of_brogar_overview.jpg website/kanis.fr/ring_of_brogar_swirley_stone.jpg website/kanis.fr/ring_of_brogar_zigzag_stone.jpg website/kanis.fr/ring_of_stennes_lake.jpg website/kanis.fr/ring_of_stenness_ivan.jpg website/kanis.fr/ring_of_stenness_margot_tuna.jpg website/kanis.fr/ring_of_stenness_overview.jpg website/kanis.fr/ring_of_stenness_tuna_next_to_big_stone.jpg website/kanis.fr/ring_of_stenness_tuna_on_margot.jpg website/kanis.fr/robots.txt website/kanis.fr/samye-ling.muse website/kanis.fr/samye_ling_dad.jpg website/kanis.fr/samye_ling_ivan.jpg website/kanis.fr/samye_ling_temple.jpg website/kanis.fr/samye_ling_water_goddess.jpg website/kanis.fr/scotland-trip.muse website/kanis.fr/sitemap.txt website/kanis.fr/small-world.png website/kanis.fr/small-world.swf website/kanis.fr/sushi-go-round.png website/kanis.fr/sushi-go-round.swf website/kanis.fr/svf-example1.png website/kanis.fr/svf-example2.png website/kanis.fr/svf-example3.png website/kanis.fr/svf-example4.png website/kanis.fr/svf.muse website/kanis.fr/thurso.muse website/kanis.fr/thurso_beach.jpg website/kanis.fr/thurso_ivan_tuna_lighthouse.jpg website/kanis.fr/thurso_margot_tuna_ligthouse.jpg website/kanis.fr/tidy-config website/kanis.fr/tombstone.jpg website/kanis.fr/tuna.muse website/kanis.fr/tuna1.jpg website/kanis.fr/tuna2.jpg website/kanis.fr/tuna_eating_avocado.jpg website/kanis.fr/tuna_handing_grass_to_horses.jpg website/kanis.fr/tuna_holding_grass.jpg website/kanis.fr/tunamargot.jpg website/kanis.fr/winpack.muse website/kanis.fr/x.png website/kanis.fr/y.png

Change178 at Tue Feb 09 16:56:57 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r f7fada9aefaa -r 312862c45ac6 website/kanis.fr/winpack.muse
--- a/website/kanis.fr/winpack.muse	Tue Feb 09 16:52:27 2010 +0100
+++ b/website/kanis.fr/winpack.muse	Tue Feb 09 16:56:57 2010 +0100
@@ -34,7 +34,7 @@
 
 * Installation
 
-[[winpack.7z][Download]] the latest version and unpack the zip file. If you are a
+[[winpack.7z][Download] the latest version and unpack the zip file. If you are a
 console junky like myself you can use [[7za.exe][7za]] in a dos prompt. Customise
 the file called inside winpack/bin/ivan-nt.bat to your taste. Launch
 it from you command prompt and you should have all the tools at your


 

jiggle web page

File modified: website/kanis.fr/projects.muse

Change177 at Tue Feb 09 16:52:27 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 8556d609b75e -r f7fada9aefaa website/kanis.fr/projects.muse
--- a/website/kanis.fr/projects.muse	Tue Feb 09 16:52:04 2010 +0100
+++ b/website/kanis.fr/projects.muse	Tue Feb 09 16:52:27 2010 +0100
@@ -1,32 +1,5 @@
 #title Projects
 
-My main productivity tool is emacs. I spend a lot of time configuring
-it to do my bidding. I use it as a news reader, mail client, chat
-interface, Japanese learning tool, web browser, organizer, calendar,
-etc... I even sometime use it for writing programs.
-
-I have enjoyed my time off to create a vt100 emulator for emacs called
-[[nterm][nterm]].
-
-Recently I have to use Windows a lot, I have made [[winpack][Winpack]] so that's it
-bearable. It's a file with a collection of free software.
-
-In 2007, I have declared .emacs bankruptcy like [[http://www.emacsblog.org/2007/10/07/declaring-emacs-bankruptcy/][Ryan McGeary]]. My
-configuration file grew so large it was unmaintainable. I took the
-time to split it up in small manageable chunks.
-
-The [[http://kanis.fr/hg/lisp][result]] was well worth the time invested. I have packaged all
-external programs that are not included in emacs 23.1: auctex, bbdb,
-lookup, org, w3m...
-
-The start up files are in [[http://kanis.fr/hg/lisp/emacs.d][emacs.d]]. I have split files amongst
-different functionality groups. I compile all elisp files myself. A
-warning message will help me find my mistakes.
-
-As to older projects, I wrote [[pocketkanji][PocketKanji]] back in 2001 when I was a C
-master; I don't maintain it anymore. I patched [[cdinsert][cdlabelgen]] back when I
-liked Perl a lot. I prefer Python to Perl these days as it is easier
-to read.
-
+This page has moved to [[download]].
 
 [[index][back]]


 

jiggle web page

File modified: website/kanis.fr/index.muse

Change176 at Tue Feb 09 16:52:04 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r f8ef5631ed41 -r 8556d609b75e website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Tue Feb 09 16:51:39 2010 +0100
+++ b/website/kanis.fr/index.muse	Tue Feb 09 16:52:04 2010 +0100
@@ -14,8 +14,8 @@
 
 * In English
 
-Read my [[resume][resume]] and about some [[projects][projects]]. I like playing [[game-en][fine game]] from
-time to time.
+Read my [[resume][resume]] or [[download]] some of my projects. My computing life is
+90% [[emacs]], the rest of the time is Firefox or playing [[game-en][fine game]].
 
 I have three blogs:
  - a personal/technical [[blog][blog]], [[http://kanis.fr/blog.xml][RSS]][[http://kanis.fr/blog.xml][feed-icon-14x14.png]].


 

broken thunderbird

File modified: website/kanis.fr/blog.muse

Change175 at Tue Feb 09 16:51:39 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 1e57ac610098 -r f8ef5631ed41 website/kanis.fr/blog.muse
--- a/website/kanis.fr/blog.muse	Tue Feb 09 16:49:48 2010 +0100
+++ b/website/kanis.fr/blog.muse	Tue Feb 09 16:51:39 2010 +0100
@@ -1,5 +1,24 @@
 #title English blog
 
+* 20100209 Thunderbird 3.0.1 TLS + SMTP broken
+
+What's wrong with the latest version of Thunderbird? It doesn't work
+with my server that uses STARTTLS. I generated a log file.
+
+<example>
+Send: EHLO patsy.makina-nantes.net
+Response: 250-kanis.fr Hello 179.240.204-77.rev.gaoland.net [77.204.240.179]
+Response: 250-SIZE 104857600
+Response: 250-PIPELINING
+Response: 250-STARTTLS
+Response: 250 HELP
+Send: QUIT
+</example>
+
+Well crap it should work. It did work on my father's Thunderbird a
+year ago . How annoying. So I told my client to use Pegasus Mail which
+doesn't look as pretty but it works.
+
 * 20091201 What's wrong with the swiss?
 
 A vote will forbid the construction of mosque. It's so silly, the


 

create release script for svf

File modified: Makefile

Change174 at Tue Feb 09 16:49:48 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 0acae9a46d9d -r 1e57ac610098 Makefile
--- a/Makefile	Tue Feb 09 16:49:33 2010 +0100
+++ b/Makefile	Tue Feb 09 16:49:48 2010 +0100
@@ -1,7 +1,8 @@
 SUBDIRS = \
 website \
 lisp \
-info
+info \
+svf
 
 .PHONY: $(SUBDIRS) all clean install
 


 

create release script for svf

File modified: svf/Makefile svf/release.sh svf/template.php

Change173 at Tue Feb 09 16:49:33 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r 7cfb93736994 -r 0acae9a46d9d svf/template.php
--- a/svf/template.php	Mon Feb 08 12:50:02 2010 +0100
+++ b/svf/template.php	Tue Feb 09 16:49:33 2010 +0100
@@ -1,6 +1,4 @@
 <?php
-
-// un template pour créer un tableau
 $template_table = '
 if ($error) {
     $error_msg = 


 

add sfv

File modified: svf/FormTest.php svf/InputTest.php svf/Makefile svf/RadioTest.php svf/TextareaTest.php svf/example1.php svf/example2.php svf/example3.php svf/example4.php svf/form.php svf/function.php svf/input.php svf/radio.php svf/template.php svf/textarea.php svf/widget.php

Change172 at Mon Feb 08 12:50:02 2010 +0100 by Ivan Kanis <ivan@patsy>

diff -r affdcd0278e0 -r 7cfb93736994 svf/widget.php
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/svf/widget.php	Mon Feb 08 12:50:02 2010 +0100
@@ -0,0 +1,77 @@
+<?php
+
+abstract class Widget {
+    protected $error = "";
+    protected $label = "";
+    protected $valid = true;
+    protected $widget = "";
+
+    public function end() {
+        $output = "";
+        if ($this->label) {
+            $output .= $this->label . "\n";
+        }
+        $output .= $this->widget . "\n";
+        if ($this->error) {
+            $output .=
+                "<div class=\"error\">" .
+                $this->error .
+                "</div>\n";
+        }
+        $return["error"] = $this->error;
+        $return["label"] = $this->label;
+        $return["valid"] = $this->valid;
+        $return["widget"] = $this->widget;
+        $return["output"] = $output;
+        return $return;
+    }
+    protected function label($name, $hash) {
+        if ($hash["label"]) {
+            $this->label .= "<label for=\"{$name}\">{$hash['label']}";
+            if ($hash["required"] && $hash["mark"]) {
+                $this->label .= $hash["mark"];
+            }
+            $this->label .= "</label>";
+        }
+    }
+    protected function validators($name, $hash) {
...
 

don't start elim is executable does not exist

File modified: lisp/emacs.d/ivan-erc.el

Change171 at Mon Feb 08 09:47:25 2010 +0100 by makina@localhost6.localdomain6

diff -r 889b42160eeb -r affdcd0278e0 lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Sun Feb 07 16:47:18 2010 +0100
+++ b/lisp/emacs.d/ivan-erc.el	Mon Feb 08 09:47:25 2010 +0100
@@ -34,6 +34,7 @@
            :password ivan-erc-freenode-password)
       (save-window-excursion
         (and (not (get-buffer "*garak*"))
+             (file-exists-p elim-executable)
              (garak))))))
 
 (defun ivan-erc-clear-buffer ()


 

add yum install

File modified: bin/setup.sh

Change170 at Sun Feb 07 16:47:18 2010 +0100 by makina@localhost6.localdomain6

diff -r f6ef7a98b3af -r 889b42160eeb bin/setup.sh
--- a/bin/setup.sh	Thu Feb 04 18:58:10 2010 +0100
+++ b/bin/setup.sh	Sun Feb 07 16:47:18 2010 +0100
@@ -1,4 +1,33 @@
-function package_install () {
+function yum_install () {
+    yum install \
+apr-devel \
+apr-util-devel \
+aspell-fr \
+bzip2-devel \
+freetype-devel \
+fuse \
+giflib-devel \
+gnutls \
+gnutls-utils \
+httpd-devel \
+libX11-devel \
+libXpm-devel \
+libjpeg-devel \
+libpng-devel \
+libtiff-devel \
+libxml2-devel \
+mp3info \
+mplayer \
+mumble \
+openssh-server \
+vim \
+w3m \
+xorg-x11-fonts-misc \
+xterm \
+zlib-devel
+}
+
+function apt_install () {
     apt-get install \
 a2ps \
 apt-file \
@@ -101,7 +130,16 @@
 PORTABLE_DIR=/media/Iomega_HDD/keep/
 if test X$(id -u) == X0
...
 

add fedora support

File modified: bin/setenv.sh

Change169 at Thu Feb 04 18:58:10 2010 +0100 by makina@localhost6.localdomain6

diff -r 5532c3cc5f76 -r f6ef7a98b3af bin/setenv.sh
--- a/bin/setenv.sh	Wed Feb 03 19:48:15 2010 +0100
+++ b/bin/setenv.sh	Thu Feb 04 18:58:10 2010 +0100
@@ -42,11 +42,15 @@
 
 # TBD add Solaris and AIX
 vendor () {
-    file=/etc/lsb-release
-    if [ -f ${file} ]
+    file_ubuntu=/etc/lsb-release
+    file_fedora=/etc/system-release-cpe
+    if [ -f ${file_ubuntu} ]
     then
-	. ${file}
+	. ${file_ubuntu}
 	echo ${DISTRIB_ID} | tr [A-Z] [a-z]
+    elif [ -f ${file_fedora} ]
+    then
+	echo $(awk -F : '{print $4}' < ${file_fedora})
     elif [ -f /etc/debian_version ]
     then
         echo debian
@@ -56,10 +60,14 @@
 # TBD add Solaris and AIX
 version () {
     file=/etc/lsb-release
+    file_fedora=/etc/system-release-cpe
     if [ -f ${file} ]
     then
 	. ${file}
 	echo ${DISTRIB_RELEASE}
+    elif [ -f ${file_fedora} ]
+    then
+	echo $(awk -F : '{print $5}' < ${file_fedora})
     elif [ -f /etc/debian_version ]
     then
 	echo $(cat /etc/debian_version)


 

fix root prompt on Ubuntu 8.04

File modified: bin/setenv.sh

Change168 at Wed Feb 03 19:48:15 2010 +0100 by ivan@tao

diff -r 8a85ab627525 -r 5532c3cc5f76 bin/setenv.sh
--- a/bin/setenv.sh	Fri Jan 29 17:38:07 2010 +0100
+++ b/bin/setenv.sh	Wed Feb 03 19:48:15 2010 +0100
@@ -271,7 +271,7 @@
     fi
 
     # Prompt
-    echo 'export PS1="\h:\w\\$ "'
+    echo "export PS1='\h:\w\\$ '"
 
     # rsync setting
     echo "export RSYNC_RSH=ssh"


 

fix root prompt

File modified: bin/setenv.sh

Change167 at Fri Jan 29 17:38:07 2010 +0100 by makina@localhost6.localdomain6

diff -r cf3cffc9a119 -r 8a85ab627525 bin/setenv.sh
--- a/bin/setenv.sh	Sun Jan 24 11:58:00 2010 +0100
+++ b/bin/setenv.sh	Fri Jan 29 17:38:07 2010 +0100
@@ -270,15 +270,8 @@
         echo "export TERMINFO=${HOME}/conf/terminfo"
     fi
 
-    # Prompt TBD
-    
-    if [ "$(echo $(domain_name) | cut -c -5)" = "kanis" ]
-    then
-	host_prompt="\h"
-    else
-        host_prompt="\H"
-    fi
-    echo "export PS1=\"${host_prompt}:\w\$ "\"
+    # Prompt
+    echo 'export PS1="\h:\w\\$ "'
 
     # rsync setting
     echo "export RSYNC_RSH=ssh"


 

start.sh fix syntax error

File modified: bin/start.sh

Change166 at Sun Jan 24 11:58:00 2010 +0100 by ivan@tao

diff -r 53d38fb9f440 -r cf3cffc9a119 bin/start.sh
--- a/bin/start.sh	Sun Jan 24 11:55:04 2010 +0100
+++ b/bin/start.sh	Sun Jan 24 11:58:00 2010 +0100
@@ -25,9 +25,7 @@
 then
     ssh-add
     check "password error with  private key"
-    then
-        updateweb.py &
-    fi
+    updateweb.py &
 fi
 wrapper.py emacs &
 firefox &


 

print error message when using wrong ssh password key

File modified: bin/start.sh

Change165 at Sun Jan 24 11:55:04 2010 +0100 by ivan@tao

diff -r b1ef700f27b9 -r 53d38fb9f440 bin/start.sh
--- a/bin/start.sh	Fri Jan 22 11:19:07 2010 +0100
+++ b/bin/start.sh	Sun Jan 24 11:55:04 2010 +0100
@@ -24,7 +24,7 @@
 if test $(hostname) = tao
 then
     ssh-add
-    if test $? -ne 0
+    check "password error with  private key"
     then
         updateweb.py &
     fi


 

only updateweb on tao

File modified: bin/start.sh

Change164 at Fri Jan 22 11:19:07 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r b2ccbdea9821 -r b1ef700f27b9 bin/start.sh
--- a/bin/start.sh	Fri Jan 22 11:16:46 2010 +0100
+++ b/bin/start.sh	Fri Jan 22 11:19:07 2010 +0100
@@ -17,12 +17,17 @@
 fi
 cd ${HOME}/hg
 hg pull ${portable_dir}/keep/hg
+hg update
 check "error pulling mercurial"
 make
 check "compilation error"
-ssh-add
-if test $? -ne 0
-    updateweb.py &
+if test $(hostname) = tao
+then
+    ssh-add
+    if test $? -ne 0
+    then
+        updateweb.py &
+    fi
 fi
 wrapper.py emacs &
 firefox &


 

leave 'a' in dired for dired-find-alternate-file

use 'A' for gnus attachment. `a' is command `dired-find-alternate-file', which simply calls `find-alternate-file', which replaces the current buffer with the new, target buffer.

File modified: lisp/emacs.d/ivan-dired.el

Change163 at Fri Jan 22 11:16:46 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 0b18b96d24f0 -r b2ccbdea9821 lisp/emacs.d/ivan-dired.el
--- a/lisp/emacs.d/ivan-dired.el	Mon Jan 11 21:32:22 2010 +0100
+++ b/lisp/emacs.d/ivan-dired.el	Fri Jan 22 11:16:46 2010 +0100
@@ -10,6 +10,9 @@
   ;; pacify compiler
   (defun w32-shell-execute (a b c d)))
 
+;; allow 'a'
+(put 'dired-find-alternate-file 'disabled nil)
+
 ;; redefine don't prompt
 (defun dired-clean-up-after-deletion (fn)
   "Clean up after a deleted file or directory FN.
@@ -37,7 +40,7 @@
   (turn-on-gnus-dired-mode)
   (ivan-keymap-keep-global dired-mode-map)
   (ivan-keymap-define dired-mode-map
-                      "a" gnus-dired-attach
+                      "A" gnus-dired-attach
                       "c" wdired-change-to-wdired-mode
                       "j" gnus-dired-find-file-mailcap
                       "p" gnus-dired-print


 

add backup of portable dir

File modified: bin/start.sh

Change162 at Mon Jan 11 21:32:22 2010 +0100 by ivan@tao

diff -r 730806a20fc1 -r 0b18b96d24f0 bin/start.sh
--- a/bin/start.sh	Mon Jan 11 20:44:02 2010 +0100
+++ b/bin/start.sh	Mon Jan 11 21:32:22 2010 +0100
@@ -26,6 +26,7 @@
 fi
 wrapper.py emacs &
 firefox &
+nice rsync -a /media/Iomega_HDD/keep ~/local &
 
 # Local Variables:
 # compile-command: "sh start.sh"


 

start firefox and emacs after asking for ssh key

File modified: bin/start.sh

Change161 at Mon Jan 11 20:44:02 2010 +0100 by ivan@tao

diff -r d8a55b0e3bb7 -r 730806a20fc1 bin/start.sh
--- a/bin/start.sh	Mon Jan 11 20:40:02 2010 +0100
+++ b/bin/start.sh	Mon Jan 11 20:44:02 2010 +0100
@@ -10,18 +10,22 @@
     fi
 }
 
-sudo mount ${portable_dir}
-check "error mounting ${portable_dir}"
+if test ! -d ${portable_dir}/keep
+then
+    sudo mount ${portable_dir}
+    check "error mounting ${portable_dir}"
+fi
 cd ${HOME}/hg
 hg pull ${portable_dir}/keep/hg
 check "error pulling mercurial"
 make
 check "compilation error"
-wrapper.py emacs
-firefox
 ssh-add
-check "error adding key"
-updateweb.py
+if test $? -ne 0
+    updateweb.py &
+fi
+wrapper.py emacs &
+firefox &
 
 # Local Variables:
 # compile-command: "sh start.sh"


 

only set w3m on portable dir for me

File modified: lisp/emacs.d/ivan-w3m.el

Change160 at Mon Jan 11 20:40:02 2010 +0100 by ivan@tao

diff -r 7d091772c91b -r d8a55b0e3bb7 lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Fri Jan 08 18:59:02 2010 +0100
+++ b/lisp/emacs.d/ivan-w3m.el	Mon Jan 11 20:40:02 2010 +0100
@@ -100,11 +100,14 @@
    (w3m-view-this-url . ivan-w3m-safe-view-this-url)
    (w3m-mouse-view-this-url . w3m-mouse-safe-view-this-url)
    (w3m-print-this-url))
- w3m-profile-directory (concat ivan-var-portable-dir ".emacs-w3m")
  w3m-search-engine-alist
  '(("google" "http://www.google.com/search?q=%s&num=100")
    ("google-map" "http://maps.google.com/maps?&q=%s")))
 
+(if (eq ivan-var-user 'ivan)
+    (setq w3m-profile-directory
+          (concat ivan-var-portable-dir ".emacs-w3m")))
+
 (ivan-face
  w3m-arrived-anchor purple
  w3m-bold yellow


 

start script

File modified: bin/start.sh

Change159 at Fri Jan 08 18:59:02 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r 7f5083a67f67 -r 7d091772c91b bin/start.sh
--- a/bin/start.sh	Fri Jan 08 18:46:18 2010 +0100
+++ b/bin/start.sh	Fri Jan 08 18:59:02 2010 +0100
@@ -1,7 +1,27 @@
 #!/bin/sh
 
 portable_dir=/media/Iomega_HDD
+
+check () {
+    if test $? -ne 0
+    then
+	printf "$1\n"
+	exit 1
+    fi
+}
+
 sudo mount ${portable_dir}
+check "error mounting ${portable_dir}"
+cd ${HOME}/hg
+hg pull ${portable_dir}/keep/hg
+check "error pulling mercurial"
+make
+check "compilation error"
+wrapper.py emacs
+firefox
+ssh-add
+check "error adding key"
+updateweb.py
 
 # Local Variables:
 # compile-command: "sh start.sh"


 

merge

File modified: bin/setenv.sh bin/setup.sh bin/skype.sh

Change158 at Fri Jan 08 18:46:18 2010 +0100 by Ivan Kanis <squeeze@koi>

diff -r ffa0f20fad26 -r 7f5083a67f67 bin/skype.sh
--- a/bin/skype.sh	Fri Jan 08 08:39:45 2010 +0100
+++ b/bin/skype.sh	Fri Jan 08 18:46:18 2010 +0100
@@ -1,4 +1,8 @@
 #!/bin/sh
+
+ALSA_MIXER=/tmp/alsa
 export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so 
+alsactl -f ${ALSA_MIXER} store
 skype 2> /dev/null
+alsactl -f ${ALSA_MIXER} restore
 


 

merge

File modified:

Change157 at Fri Jan 08 08:39:45 2010 +0100 by ivan@tao

diff -r 8006d1d2850b -r ffa0f20fad26 lisp/emacs.d/ivan-autoinsert.el
--- a/lisp/emacs.d/ivan-autoinsert.el	Fri Jan 08 08:35:51 2010 +0100
+++ b/lisp/emacs.d/ivan-autoinsert.el	Fri Jan 08 08:39:45 2010 +0100
@@ -13,7 +13,6 @@
   (concat
    " Copyright (C) " (substring (current-time-string) -4) " Ivan Kanis
  Author: Ivan Kanis
- \044Id$
 
  This program is free software ; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
@@ -55,6 +54,17 @@
     (ivan-autoinsert-insert "#" ivan-autoinsert-bottom-comment)
     (insert "\n")))
 
+(defun ivan-autoinsert-php ()
+  "Python template"
+  (insert "<?php\n")
+  (ivan-autoinsert-insert "//" ivan-autoinsert-top-comment)
+  (insert "\n")
+  (save-excursion
+    (insert "\n\n")
+    (ivan-autoinsert-local-variables "//" "phpunit ." t)
+    (ivan-autoinsert-insert "//" ivan-autoinsert-bottom-comment)
+    (insert "\n?>\n")))
+
 (defun ivan-autoinsert-shell ()
   "Shell script template, auto detect Korn Shell"
   (let ((shell (if (file-exists-p "/bin/ksh") "ksh" "sh")))
@@ -161,17 +171,15 @@
 \\author{Ivan Kanis}
 \\maketitle
 
-\\begin{center}
-$ \044Id$ $
-\\end{center}
-
 \\end{document}
 "))
 
-(defun ivan-autoinsert-local-variables (comment command)
...
 

add template for php

File modified: lisp/emacs.d/ivan-autoinsert.el

Change156 at Tue Dec 22 16:29:50 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 9593abd02c05 -r 55aec4ac5ea5 lisp/emacs.d/ivan-autoinsert.el
--- a/lisp/emacs.d/ivan-autoinsert.el	Fri Dec 18 11:04:13 2009 +0100
+++ b/lisp/emacs.d/ivan-autoinsert.el	Tue Dec 22 16:29:50 2009 +0100
@@ -13,7 +13,6 @@
   (concat
    " Copyright (C) " (substring (current-time-string) -4) " Ivan Kanis
  Author: Ivan Kanis
- \044Id$
 
  This program is free software ; you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
@@ -55,6 +54,17 @@
     (ivan-autoinsert-insert "#" ivan-autoinsert-bottom-comment)
     (insert "\n")))
 
+(defun ivan-autoinsert-php ()
+  "Python template"
+  (insert "<?php\n")
+  (ivan-autoinsert-insert "//" ivan-autoinsert-top-comment)
+  (insert "\n")
+  (save-excursion
+    (insert "\n\n")
+    (ivan-autoinsert-local-variables "//" "phpunit ." t)
+    (ivan-autoinsert-insert "//" ivan-autoinsert-bottom-comment)
+    (insert "\n?>\n")))
+
 (defun ivan-autoinsert-shell ()
   "Shell script template, auto detect Korn Shell"
   (let ((shell (if (file-exists-p "/bin/ksh") "ksh" "sh")))
@@ -161,17 +171,15 @@
 \\author{Ivan Kanis}
 \\maketitle
 
-\\begin{center}
-$ \044Id$ $
-\\end{center}
-
 \\end{document}
 "))
 
-(defun ivan-autoinsert-local-variables (comment command)
...
 

add french quotes

File modified: conf/quotes.french

Change155 at Fri Jan 08 08:35:51 2010 +0100 by ivan@tao

diff -r 9d7530da836e -r 8006d1d2850b conf/quotes.french
--- a/conf/quotes.french	Fri Jan 08 08:35:32 2010 +0100
+++ b/conf/quotes.french	Fri Jan 08 08:35:51 2010 +0100
@@ -367,3 +367,48 @@
 leur servent que d'enveloppe.
     -- François-René de Chateaubriand
 %
+Le vrai bonheur coûte peu; s'il est cher, il n'est pas d'une bonne
+espèce.
+    -- François-René de Chateaubriand
+%
+Tout croire est d'un imbécile,
+Tout nier est d'un sot.
+    -- Charle Nodier
+%
+Le naturel est bien plus sûr:
+Le mot doit mûrir sur l'idée,
+Et puis tomber comme un fruit mûr.
+    -- Charles Nodier
+%
+Il me semble qu'il faut du courage à l'écrivain presque autant qu'au
+guerrier; l'un ne doit pas plus songer aux journalistes que l'autre à
+l'hôpital.
+    -- Stendhal
+%
+J'ai vécu d'aimer, j'ai donc vécu de larmes.
+    -- Marceline Desborde-Valmore
+%
+Objets inanimés, avez-vous donc une âme
+Qui s'attache à notre âme et la force d'aimer?
+    -- Alphonse de Lamartine
+%
+Le passé, l'avenir, ces deux moitiés de vie
+Dont l'une ne dit jamais et l'autre dit toujours.
+    -- Alphonse de Lamartine
+%
+Faites ce que je dis et non ce que j'ai fait.
+    -- Casimir Delavigne
+%
+Oui; mieux que la raison l'estomac nous dirige.
+    -- Jacques-Arsène Ancelot
...
 

add start.sh

File modified: bin/setenv.sh bin/start.sh

Change154 at Fri Jan 08 08:35:32 2010 +0100 by ivan@tao

diff -r 3e908c6ee399 -r 9d7530da836e bin/start.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/start.sh	Fri Jan 08 08:35:32 2010 +0100
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+portable_dir=/media/Iomega_HDD
+sudo mount ${portable_dir}
+
+# Local Variables:
+# compile-command: "sh start.sh"
+# End:
+
+# Copyright (C) 2010 Ivan Kanis
+# Author: Ivan Kanis
+# $Id$
+#
+# This program is free software ; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation ; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY ; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program ; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA


 

ignore hg2rss cache

File modified: .hgignore

Change153 at Fri Jan 08 08:34:45 2010 +0100 by ivan@tao

diff -r c6df0fa4984d -r 3e908c6ee399 .hgignore
--- a/.hgignore	Sat Dec 26 19:50:44 2009 +0100
+++ b/.hgignore	Fri Jan 08 08:34:45 2010 +0100
@@ -25,3 +25,4 @@
 \#*
 .\#*
 hg2rss.stamp
+*.cache


 

implement cache in hg2rss, it's a big win in perfomance

File modified: website/kanis.fr/hg2rss.py

Change152 at Sat Dec 26 19:50:44 2009 +0100 by ivan@tao

diff -r cdc307310c4e -r c6df0fa4984d website/kanis.fr/hg2rss.py
--- a/website/kanis.fr/hg2rss.py	Sat Dec 26 19:31:47 2009 +0100
+++ b/website/kanis.fr/hg2rss.py	Sat Dec 26 19:50:44 2009 +0100
@@ -179,9 +179,9 @@
         f.close()
         cache = True
     out_xml = [open(home + "/build/kanis.fr/hg.xml", "w"),
-               open(cache_xml, "a")]
+               open(cache_xml, "w")]
     out_html = [open(home + "/build/kanis.fr/hg.html", "w"),
-                open(cache_html, "a")]
+                open(cache_html, "w")]
     output_prelude_xml(out_xml[0])
     output_prelude_html(out_html[0], "Mercurial Commits")
     if cache:
@@ -192,8 +192,9 @@
     for i in range(len(values)-1, 0, -1):
         output_entry(out_xml, out_html, values[i])
     if cache:
-        out_xml[0].write(cache_xml_content)
-        out_html[0].write(cache_html_content)
+        for i in [0, 1]:
+            out_xml[i].write(cache_xml_content)
+            out_html[i].write(cache_html_content)
     output_end_xml(out_xml[0])
     output_end_html(out_html[0])
 


 

more french quote

File modified: conf/quotes.french

Change151 at Sat Dec 26 19:31:47 2009 +0100 by ivan@tao

diff -r f65f74741d6f -r cdc307310c4e conf/quotes.french
--- a/conf/quotes.french	Sat Dec 26 19:29:23 2009 +0100
+++ b/conf/quotes.french	Sat Dec 26 19:31:47 2009 +0100
@@ -363,3 +363,7 @@
 vide.
     -- François-René de Chateaubriand
 %
+Tout arrive par les idées; elles se produisent par les faits, qui ne
+leur servent que d'enveloppe.
+    -- François-René de Chateaubriand
+%


 

new french quote

File modified: conf/quotes.french

Change150 at Sat Dec 26 19:29:23 2009 +0100 by ivan@tao

diff -r 1f0aecf6ee46 -r f65f74741d6f conf/quotes.french
--- a/conf/quotes.french	Sat Dec 26 19:18:10 2009 +0100
+++ b/conf/quotes.french	Sat Dec 26 19:29:23 2009 +0100
@@ -359,3 +359,7 @@
 Le sentiment de l'infini est le véritable attribut de l'âme.
     -- Madame de Staël
 %
+Les biens de la terre ne font que creuser l'âme et en augmenter le
+vide.
+    -- François-René de Chateaubriand
+%


 

new french quote

File modified: conf/quotes.french

Change149 at Sat Dec 26 19:18:10 2009 +0100 by ivan@tao

diff -r a72e451f5ce2 -r 1f0aecf6ee46 conf/quotes.french
--- a/conf/quotes.french	Sat Dec 26 19:10:15 2009 +0100
+++ b/conf/quotes.french	Sat Dec 26 19:18:10 2009 +0100
@@ -347,3 +347,15 @@
 plus rien.
     -- Charles-Jean-François Hénault
 %
+La pensée se forme dans l'âme comme les nuages se forment dans l'air.
+    -- Joseph Joubert
+%
+La musique a sept lettres, l'écriture a vingt-cinq notes.
+    -- Joseph Joubert
+%
+Tout ce qui est exact est court.
+    -- Joseph Joubert
+%
+Le sentiment de l'infini est le véritable attribut de l'âme.
+    -- Madame de Staël
+%


 

new french quotes

File modified: website/kanis.fr/hg2rss.py

Change148 at Sat Dec 26 19:10:15 2009 +0100 by ivan@tao

diff -r aed318ac99db -r a72e451f5ce2 website/kanis.fr/hg2rss.py
--- a/website/kanis.fr/hg2rss.py	Sat Dec 26 17:32:11 2009 +0100
+++ b/website/kanis.fr/hg2rss.py	Sat Dec 26 19:10:15 2009 +0100
@@ -43,57 +43,68 @@
 </rss>""")
 
 def output_end_html(out_html):
-    out_html.write("""  </body>
+    out_html.write("""<p><a href=\"index.html\">back</a></p>
+  </body>
 </html>""")
 
 def output_html(out_html, value, str_desc, descriptions, big_page=True):
-    out_html.write("""
+    output_html2(out_html, big_page, """
 <div class="entry">
   <a name=""" + str_desc + """ style="text-decoration: none">&nbsp;</a>""")
     if big_page:
-        out_html.write("""
+        output_html2(out_html, big_page, """
         <h2>""" + descriptions[0] + """</h2>""")
-    out_html.write("""
+    output_html2(out_html, big_page, """
       <p class="first">""" + "\n".join(descriptions[1:]) + """</p>
       <p>File modified: """ + value["files"] + """
       <p>""")
     if big_page:
-        out_html.write("<a href=" + value["changeset"] + ".html>")
-    out_html.write("Change" + value["changeset"])
+        output_html2(out_html, big_page, "<a href=" + value["changeset"] +
+                     ".html>")
+    output_html2(out_html, big_page, "Change" + value["changeset"])
     if big_page:
-        out_html.write("</a>")
-    out_html.write(" at " + value["date"] +
+        output_html2(out_html, big_page, "</a>")
+    output_html2(out_html, big_page, " at " + value["date"] +
       " by " + value["user"] + """</p>
 """)
     count = 0
-    out_html.write("<pre>\n")
...
 

optimise hg2rss.py

don't compile if revisions are the same

File modified: .hgignore website/kanis.fr/hg2rss.py

Change147 at Sat Dec 26 17:32:11 2009 +0100 by ivan@tao

diff -r 3403c8bd0196 -r aed318ac99db website/kanis.fr/hg2rss.py
--- a/website/kanis.fr/hg2rss.py	Thu Dec 24 18:40:04 2009 +0100
+++ b/website/kanis.fr/hg2rss.py	Sat Dec 26 17:32:11 2009 +0100
@@ -120,9 +120,8 @@
              'diff' : "",
              'description' : "" }
 
-if __name__ == "__main__":
+def main():
     f = os.popen("hg log -r 2: -v -p")
-    home = os.getenv("HOME")
     out_xml = open(home + "/build/kanis.fr/hg.xml", "w")
     out_html = open(home + "/build/kanis.fr/hg.html", "w")
     output_prelude_xml(out_xml)
@@ -163,6 +162,33 @@
     output_end_html(out_html)
 
 
+if __name__ == "__main__":
+    home = os.getenv("HOME")
+    f = os.popen("hg log -l 1")
+    r = re.compile("changeset:   (.*):")
+    m = r.match(f.read())
+    if m:
+        revision = m.groups()[0]
+    else:
+        print "Impossible to find last revision."
+        exit
+    f.close()
+    stamp = "hg2rss.stamp"
+    if os.path.exists(stamp):
+        f = open(stamp, "r")
+        last_revision = f.read()
+        f.close()
+        if revision == last_revision:
+            print "same revision."
+        else:
+            main()
+    else:
+        main()
+    f = open(stamp, "w")
...
 

fix stupid bug

File modified: bin/setup.sh

Change146 at Thu Dec 24 18:40:04 2009 +0100 by ivan@tao

diff -r d74b7bca5a12 -r 3403c8bd0196 bin/setup.sh
--- a/bin/setup.sh	Thu Dec 24 18:37:39 2009 +0100
+++ b/bin/setup.sh	Thu Dec 24 18:40:04 2009 +0100
@@ -89,6 +89,7 @@
 function create_symlink ()
 {
     ln -sf ${HOME}/hg/conf/bashrc ${HOME}/.bashrc
+    rm -f ${HOME}/.emacs.d
     ln -sf ${HOME}/hg/lisp/emacs.d ${HOME}/.emacs.d
     ln -sf ${HOME}/hg/conf/Xresources ${HOME}/.Xresources
     ln -sf ${HOME}/hg/conf/vimrc ${HOME}/.vimrc


 

share aspell dictionary on portable dir

File modified: bin/setup.sh

Change145 at Thu Dec 24 18:37:39 2009 +0100 by ivan@tao

diff -r 9593abd02c05 -r d74b7bca5a12 bin/setup.sh
--- a/bin/setup.sh	Fri Dec 18 11:04:13 2009 +0100
+++ b/bin/setup.sh	Thu Dec 24 18:37:39 2009 +0100
@@ -92,8 +92,12 @@
     ln -sf ${HOME}/hg/lisp/emacs.d ${HOME}/.emacs.d
     ln -sf ${HOME}/hg/conf/Xresources ${HOME}/.Xresources
     ln -sf ${HOME}/hg/conf/vimrc ${HOME}/.vimrc
+    rm -f ${HOME}/.*pws
+    ln -s ${PORTABLE_DIR}/.aspell.en.pws ${HOME}/.aspell.en.pws
+    ln -s ${PORTABLE_DIR}/.aspell.fr.pws ${HOME}/.aspell.fr.pws
 }
 
+PORTABLE_DIR=/media/Iomega_HDD/keep/
 if test X$(id -u) == X0
 then
     package_install


 

erc remove logging

File modified: lisp/emacs.d/ivan-erc.el

Change144 at Fri Dec 18 11:04:13 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 5d37517d1239 -r 9593abd02c05 lisp/emacs.d/ivan-erc.el
--- a/lisp/emacs.d/ivan-erc.el	Fri Dec 18 11:03:46 2009 +0100
+++ b/lisp/emacs.d/ivan-erc.el	Fri Dec 18 11:04:13 2009 +0100
@@ -8,7 +8,6 @@
   (require 'erc)
   (require 'erc-button)
   (require 'erc-join)
-  (require 'erc-log)
   (require 'erc-match)
   (require 'erc-track)
   (require 'garak))
@@ -56,22 +55,6 @@
 (defun ivan-erc-join ()
   "Function run when joining a channel")
 
-(defun ivan-erc-log (buffer)
-  "Returns t when I am not lurking and it is not a server buffer"
-  (save-excursion
-    (save-window-excursion
-      (set-buffer buffer)
-      (and (not ivan-erc-lurk)
-           (not (erc-server-buffer-p))))))
-
-(defun ivan-erc-log-file-name (buffer target nick server port)
-  "Generates a log-file name, remove hash"
-  (mapconcat (lambda (char)
-               (if (eq char ?#) "" (char-to-string char)))
-             (concat (format-time-string "%Y-%m-%d") "-"
-                     (and target
-                          (buffer-name buffer))) ""))
-
 (defun ivan-erc-mode-hook ()
   (ivan-keymap-define erc-mode-map
                       "\C-c\C-c" ivan-erc-clear-buffer
@@ -85,7 +68,6 @@
 
 
 (add-hook 'erc-connect-pre-hook 'ivan-erc-connect-pre)
-(add-hook 'erc-connect-pre-hook 'erc-initialize-log-marker)
 (add-hook 'erc-send-completed-hook 'ivan-erc-send-complete)
 (add-hook 'erc-join-hook 'ivan-erc-join)
...
 

don't build resume anymore

File modified: website/resume/Makefile

Change143 at Fri Dec 18 11:03:46 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 62b4f1df6c9e -r 5d37517d1239 website/resume/Makefile
--- a/website/resume/Makefile	Fri Dec 18 11:03:30 2009 +0100
+++ b/website/resume/Makefile	Fri Dec 18 11:03:46 2009 +0100
@@ -13,6 +13,8 @@
 
 WEB_FILE=$(foreach file, $(LOCAL_FILE), $(WEB_DIR)/$(file))
 
+dummy:
+
 all : $(WEB_FILE) $(LOCAL_FILE)
 
 docbook: $(DOCBOOK_FILE)


 

build mercurial rss

add appointment implement variable warning time blog

File modified: website/kanis.fr/Makefile website/kanis.fr/blog-emacs.muse website/kanis.fr/hg2rss.py website/kanis.fr/index.muse

Change142 at Fri Dec 18 11:03:30 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 38c4ee916d98 -r 62b4f1df6c9e website/kanis.fr/index.muse
--- a/website/kanis.fr/index.muse	Fri Dec 18 11:02:26 2009 +0100
+++ b/website/kanis.fr/index.muse	Fri Dec 18 11:03:30 2009 +0100
@@ -7,7 +7,7 @@
 Lisez mon [[cv][CV]]. Je fait beaucoup de programmation : voici un [[portfolio][port folio]]
 d'exemples de code dont je suis l'auteur.
 
-J'aime jouer à de [[game-fr][bons jeux]].
+J'aime jouer à de [[game-fr][bons jeux]] de temps en temps.
 
 Vous pouvez me joindre au +33 2 51 84 11 78 ou par e-mail à l'adresse
 suivante : =apple arobas kanis point fr=.


 

add ivan@ to scp line

File modified: bin/updateweb.py

Change141 at Fri Dec 18 11:02:26 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 0dfe48e35479 -r 38c4ee916d98 bin/updateweb.py
--- a/bin/updateweb.py	Fri Dec 18 11:02:01 2009 +0100
+++ b/bin/updateweb.py	Fri Dec 18 11:02:26 2009 +0100
@@ -23,14 +23,14 @@
 import os
 
 rsync = 'rsync -rvz --times '
-for dest in ['kanis.fr:~/www/', 'minimal.cx:~/htdocs/']:
+for dest in ['ivan@kanis.fr:~/www/', 'ivan@minimal.cx:~/htdocs/']:
     os.system( rsync + '--copy-links --copy-dirlinks \
     --exclude-from $HOME/hg/.hgignore \
     ~/build/kanis.fr/ ' + dest)
 
-for dir in ['kanis.fr:~/exim-virtual',
-            'kanis.fr:/etc/_darcs']:
-    os.system(rsync + ' ' + dir + ' ~/keep/backup-kanis-fr')
+for dir in ['ivan@kanis.fr:~/exim-virtual',
+            'ivan@kanis.fr:/etc/_darcs']:
+    os.system(rsync + ' ' + dir + ' ~/local/backup-kanis-fr')
 
 # Local Variables:
 # compile-command: "./updateweb.py"


 

compile elim

add libpurple-dev on list of package to install

File modified: bin/setup.sh lisp/Makefile

Change140 at Fri Dec 18 11:02:01 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r dee535f2ba8e -r 0dfe48e35479 lisp/Makefile
--- a/lisp/Makefile	Thu Dec 17 10:27:28 2009 +0100
+++ b/lisp/Makefile	Fri Dec 18 11:02:01 2009 +0100
@@ -5,6 +5,7 @@
 bbdb \
 dictionary \
 edict \
+elim \
 emms \
 haskell \
 ivan \


 

merge

File modified: .hgignore

Change139 at Thu Dec 17 10:27:28 2009 +0100 by Ivan Kanis <squeeze@koi>

diff -r 0e7fed4befcf -r dee535f2ba8e website/resume/resume.xml
--- a/website/resume/resume.xml	Thu Dec 17 10:22:38 2009 +0100
+++ b/website/resume/resume.xml	Thu Dec 17 10:27:28 2009 +0100
@@ -424,7 +424,6 @@
       <i>AIX</i>
       <i>Linux</i>
       <i>Solaris</i>
-      <i>Windows</i>
       <i>Palm</i>
       <i>NetBSD</i>
     </skillset>


 

add tnf stanza

File modified: conf/bashrc

Change138 at Thu Dec 17 10:22:38 2009 +0100 by squeeze@koi

diff -r 852edbe03a80 -r 0e7fed4befcf conf/bashrc
--- a/conf/bashrc	Thu Dec 17 10:19:35 2009 +0100
+++ b/conf/bashrc	Thu Dec 17 10:22:38 2009 +0100
@@ -10,6 +10,8 @@
 ${HOME}/hg/bin/setenv.sh --interactive > ${file}
 source ${file}
 
+export LH_BASE=/home/debian/tnf/live-helper
+export PATH=$PATH:${LH_BASE}/helpers
 # Copyright (C) 2006  Ivan Kanis
 # Author: Ivan Kanis
 # $Id: bashrc 2398 2008-08-27 09:29:32Z ivan $


 

add files to ignore, create website en and fr directories

File modified: .hgignore website/resume/en/dummy website/resume/fr/dummy

Change137 at Thu Dec 17 10:19:35 2009 +0100 by squeeze@koi

diff -r af8631900369 -r 852edbe03a80 .hgignore
--- a/.hgignore	Thu Dec 17 10:17:41 2009 +0100
+++ b/.hgignore	Thu Dec 17 10:19:35 2009 +0100
@@ -13,8 +13,8 @@
 elim-func-handlers.c
 handler-list.h
 ops.h
-ivan-kanis-cv.pdf
-ivan-kanis-cv.rtf
+ivan-kanis-cv.*
+ivan-kanis-short.*
 *.info
 *.pdf
 *.ps


 

compile appt.el

File modified: lisp/misc/Makefile

Change136 at Thu Dec 17 10:17:41 2009 +0100 by squeeze@koi

diff -r 247aa18fe960 -r af8631900369 lisp/misc/Makefile
--- a/lisp/misc/Makefile	Thu Dec 17 10:17:32 2009 +0100
+++ b/lisp/misc/Makefile	Thu Dec 17 10:17:41 2009 +0100
@@ -20,6 +20,7 @@
 
 SRC = \
 anki.el \
+appt.el \
 auto-lang.el \
 boxquote.el \
 column-marker.el \


 

emacs appointment implement variable warning time

File modified: lisp/misc/appt.el

Change135 at Thu Dec 17 10:17:32 2009 +0100 by squeeze@koi

diff -r 8896bd272705 -r 247aa18fe960 lisp/misc/appt.el
--- a/lisp/misc/appt.el	Thu Dec 17 10:13:58 2009 +0100
+++ b/lisp/misc/appt.el	Thu Dec 17 10:17:32 2009 +0100
@@ -355,6 +355,8 @@
         ;; calculate the number of minutes until the appointment.
         (when (and appt-issue-message appt-time-msg-list)
           (setq appt-comp-time (caar (car appt-time-msg-list))
+                appt-warn-time (or (nth 3 (car appt-time-msg-list))
+                                   appt-message-warning-time)
                 min-to-app (- appt-comp-time cur-comp-time))
           (while (and appt-time-msg-list
                       (< appt-comp-time cur-comp-time))
@@ -362,21 +364,21 @@
             (if appt-time-msg-list
                 (setq appt-comp-time (caar (car appt-time-msg-list)))))
           ;; If we have an appointment between midnight and
-          ;; `appt-message-warning-time' minutes after midnight, we
+          ;; `appt-warn-time' minutes after midnight, we
           ;; must begin to issue a message before midnight.  Midnight
           ;; is considered 0 minutes and 11:59pm is 1439
           ;; minutes.  Therefore we must recalculate the minutes to
           ;; appointment variable.  It is equal to the number of
           ;; minutes before midnight plus the number of minutes after
           ;; midnight our appointment is.
-          (if (and (< appt-comp-time appt-message-warning-time)
-                   (> (+ cur-comp-time appt-message-warning-time)
+          (if (and (< appt-comp-time appt-warn-time)
+                   (> (+ cur-comp-time appt-warn-time)
                       appt-max-time))
               (setq min-to-app (+ (- (1+ appt-max-time) cur-comp-time)
                                   appt-comp-time)))
           ;; Issue warning if the appointment time is within
           ;; appt-message-warning time.
-          (when (and (<= min-to-app appt-message-warning-time)
+          (when (and (<= min-to-app appt-warn-time)
                      (>= min-to-app 0))
             (setq appt-now-displayed t
                   appt-display-count (1+ prev-appt-display-count))
@@ -472,14 +474,20 @@
   "[0-9]?[0-9]\\(h\\([0-9][0-9]\\)?\\|[:.][0-9][0-9]\\)\\(am\\|pm\\)?")
 
...
 

add extra w3m info files

File modified: info/emacs-w3m.info-1 info/emacs-w3m.info-2

Change134 at Thu Dec 17 10:13:58 2009 +0100 by squeeze@koi

diff -r 85dda2da8f58 -r 8896bd272705 info/emacs-w3m.info-2
Binary file info/emacs-w3m.info-2 has changed


 

vimrc remove offending lines

File modified: conf/vimrc

Change133 at Thu Dec 17 10:09:36 2009 +0100 by squeeze@koi

diff -r be47b67be809 -r 85dda2da8f58 conf/vimrc
--- a/conf/vimrc	Thu Dec 17 10:09:09 2009 +0100
+++ b/conf/vimrc	Thu Dec 17 10:09:36 2009 +0100
@@ -101,11 +101,6 @@
 
 endif " has ("autocmd")
 
-" Some Debian-specific things
-augroup filetype
-  au BufRead reportbug.*		set ft=mail
-augroup END
-
 " The following are commented out as they cause vim to behave a lot
 " different from regular vi. They are highly recommended though.
 set showcmd		" Show (partial) command in status line.


 

skype script that fixes garbled video

File modified: bin/skype.sh

Change132 at Thu Dec 17 10:09:09 2009 +0100 by squeeze@koi

diff -r 40c4352d3e3c -r be47b67be809 bin/skype.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/skype.sh	Thu Dec 17 10:09:09 2009 +0100
@@ -0,0 +1,4 @@
+#!/bin/sh
+export LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so 
+skype 2> /dev/null
+


 

new setup shell script

File modified: bin/setup.sh

Change131 at Thu Dec 17 10:08:35 2009 +0100 by squeeze@koi

diff -r bfa59a3b391c -r 40c4352d3e3c bin/setup.sh
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bin/setup.sh	Thu Dec 17 10:08:35 2009 +0100
@@ -0,0 +1,101 @@
+function package_install () {
+    apt-get install \
+a2ps \
+apt-file \
+aspell-en  \
+aspell-fr \
+autoconf  \
+automake  \
+bzip2 \
+catdvi  \
+ccache \
+darcs \
+diff \
+dnsutils \
+dvipng  \
+eblook \
+expat \
+exuberant-ctags \
+fail2ban \
+fakeroot \
+fetchmail \
+gkrellm \
+glibc-doc \
+gv \
+gworldclock \
+gzip \
+imagemagick \
+kakasi \
+k3b \
+lacheck \
+latex-ucs \
+less \
+lftp \
+libdbus-1-dev \
+libgif-dev \
+libgtk2.0-dev \
+libjpeg-dev \
...
 

merge

File modified: website/resume/resume.xml

Change130 at Tue Dec 15 20:47:27 2009 +0100 by ivan@zen

diff -r 27285d544c89 -r 8d82d8955037 website/resume/resume.xml
--- a/website/resume/resume.xml	Tue Dec 15 20:46:50 2009 +0100
+++ b/website/resume/resume.xml	Tue Dec 15 20:47:27 2009 +0100
@@ -58,11 +58,11 @@
       <duty lang='fr'>
 	<i>Écriture d'évolution de communication data en C++.</i>
 
-        <i>Mise en place de la gestion de code source
-	Subversion.</i>
+        <i>Mise en place du serveur de gestion de configuration
+	Subversion avec Python sous Solaris.</i>
 
-	<i>Analyse des besoins en serveurs de l'équipe et
-	commandes à l'hébergeur informatique.</i>
+	<i>Analyse des besoins en serveurs de l'équipe de développement et
+	mise en place du parc informatique.</i>
 
 	<i>Rédaction de fiches de tests et qualification du moteur de
 	valorisation.</i>
@@ -134,9 +134,9 @@
         le partage de plusieurs distributions Linux et NetBSD sur le
         même serveur. </i>
 -->	
-        <i>Portage et configuration de plusieurs distributions de Linux
-        pour systèmes actuels.</i>
-        <i>Développement de pilotes pour systèmes embarqués en C.</i>
+        <i>Adapation de Linux pour ordinateur portable.</i>
+        <i>Développement de pilotes pour écran tactile en C et
+        Perlsous Linux.</i>
       </duty>
     </job>
 
@@ -198,8 +198,7 @@
 	communication interne d'une entreprise. Le logiciel est
 	en production à Jardiland.</p>
 
-        <i>Développement de l'agenda, l'annuaire et la gestion de
-	ressources en PHP.</i>
+        <i>Développement du portail Intranet de Jardiland en PHP et MySQL.</i>
 
         <i>Création de fonctions communes utilisées par les différentes
...
 

ignore short resume

File modified: .hgignore

Change129 at Tue Dec 15 20:46:50 2009 +0100 by ivan@zen

diff -r 5fed541dec69 -r 27285d544c89 .hgignore
--- a/.hgignore	Tue Dec 15 20:45:18 2009 +0100
+++ b/.hgignore	Tue Dec 15 20:46:50 2009 +0100
@@ -15,6 +15,7 @@
 ops.h
 ivan-kanis-cv.pdf
 ivan-kanis-cv.rtf
+ivan-kanis-short.rtf
 *.info
 *.pdf
 *.ps


 

remove window from skill set

File modified: website/resume/resume.xml

Change128 at Tue Dec 15 20:45:18 2009 +0100 by ivan@zen

diff -r 94a893f6b78d -r 5fed541dec69 website/resume/resume.xml
--- a/website/resume/resume.xml	Tue Dec 15 20:45:01 2009 +0100
+++ b/website/resume/resume.xml	Tue Dec 15 20:45:18 2009 +0100
@@ -425,7 +425,6 @@
       <i>AIX</i>
       <i>Linux</i>
       <i>Solaris</i>
-      <i>Windows</i>
       <i>Palm</i>
       <i>NetBSD</i>
     </skillset>


 

ignore .toc

File modified: .hgignore

Change127 at Tue Dec 15 20:45:01 2009 +0100 by ivan@zen

diff -r 71a06855d51a -r 94a893f6b78d .hgignore
--- a/.hgignore	Tue Dec 15 20:44:51 2009 +0100
+++ b/.hgignore	Tue Dec 15 20:45:01 2009 +0100
@@ -22,5 +22,6 @@
 *.dvi
 *.log
 *.orig
+*.toc
 \#*
 .\#*


 

new game pages, french and emacs blog

File modified: website/kanis.fr/Makefile website/kanis.fr/blog-emacs.muse website/kanis.fr/blog-fr.muse website/kanis.fr/blog.muse website/kanis.fr/copy-dist.py website/kanis.fr/doom.png website/kanis.fr/doomrl.png website/kanis.fr/game-en.muse website/kanis.fr/game-fr.muse website/kanis.fr/index.muse website/kanis.fr/nterm-double.png website/kanis.fr/nterm.muse website/kanis.fr/portfolio.muse website/kanis.fr/small-world.png website/kanis.fr/small-world.swf website/kanis.fr/sushi-go-round.png website/kanis.fr/sushi-go-round.swf

Change126 at Tue Dec 15 20:44:51 2009 +0100 by ivan@zen

diff -r 2b591f0393f4 -r 71a06855d51a website/kanis.fr/sushi-go-round.swf
Binary file website/kanis.fr/sushi-go-round.swf has changed


 

add administration linux note

File modified: tex/Makefile tex/administration-linux.ltx tex/opam-samba.dia tex/opam-samba.eps tex/opam.eps

Change125 at Tue Dec 15 20:42:35 2009 +0100 by ivan@zen

diff -r 7a8ef4c680d4 -r 2b591f0393f4 tex/opam.eps
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tex/opam.eps	Tue Dec 15 20:42:35 2009 +0100
@@ -0,0 +1,996 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: opam.eps
+%%Creator: fig2dev Version 3.2 Patchlevel 3d
+%%CreationDate: Sat Sep 27 09:57:54 2003
+%%For: ivank@dell (,,,)
+%%BoundingBox: 0 0 714 580
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
...
 

remove albums wishlist

File modified: tex/500-album.ltx

Change124 at Tue Dec 15 20:39:05 2009 +0100 by ivan@zen

diff -r 6d32fd2f89a6 -r 7a8ef4c680d4 tex/500-album.ltx
--- a/tex/500-album.ltx	Tue Dec 15 20:38:22 2009 +0100
+++ b/tex/500-album.ltx	Tue Dec 15 20:39:05 2009 +0100
@@ -33,7 +33,6 @@
 Jackie Wilson, Mr. Excitement!\\
 Jerry Lee Lewis, The Jerry Lee Lewis Anthology: All Killer No Filler!\\
 John Prine, John Prine\\
-LL Cool J, Radio\\
 Labelle, Nightbirds\\
 Little Richard, Here's Little Richard\\
 Lo'Jo, Bohême de cristal\\
@@ -46,51 +45,29 @@
 Paul Simon, There Goes Rhymin' Simon\\
 Peter Wolf, Sleepless\\
 Professor Longhair, New Orleans Piano\\
-Public Enemy, Yo! Bum Rush the Show\\
 R.E.M., Document\\
 Randy Newman, 12 Songs\\
 Randy Newman, Good Old Boys\\
-Randy Newman, Sail Away\\
 Ray Charles, The Birth of Soul: The Complete Atlantic Rhythm and Blues Recordings, 1952 - 1959\\
 Replacements, Tim\\
-Robert Johnson, King of the Delta Blues Singers, Vol. 2\\
 Rolling Stones, Out of Our Heads\\
 Rolling Stones, The Rolling Stones, Now!\\
 Ronettes, Presenting the Fabulous Ronettes Featuring Veronica\\
-Roxy Music, Avalon\\
 Sensational Alex Harvey Band - The Impossible Dream\\
-Sex Pistols, Never Mind the Bollocks, Here's the Sex Pistols\\
-Simon and Garfunkel, Greatest Hits\\
-Sly and the Family Stone, Fresh\\
 Sly and the Family Stone, Greatest Hits\\
 Smokey Robinson and the Miracles, Going to a Go-Go\\
-Stan Getz and Joao Gilberto Featuring Antonio Carlos Jobim, Getz/Gilberto\\
-Steve Miller Band, Fly Like an Eagle\\
-Stevie Wonder, Songs in the Key of Life\\
 Suicide, Suicide\\
 Sweat and Tears, Child Is Father to the Man, Blood\\
-T. Rex, Electric Warrior\\
-Talking Heads, Talking Heads: 77\\
 Temptations, Anthology\\
...
 

add f8 for eval-buffer and f9 to edebug function

move sawfish stuff to the graveyard

File modified: lisp/emacs.d/ivan-graveyard.el lisp/emacs.d/ivan-lisp.el

Change123 at Tue Dec 15 20:38:22 2009 +0100 by ivan@zen

diff -r 74d2289fcd5a -r 6d32fd2f89a6 lisp/emacs.d/ivan-lisp.el
--- a/lisp/emacs.d/ivan-lisp.el	Tue Dec 15 20:37:21 2009 +0100
+++ b/lisp/emacs.d/ivan-lisp.el	Tue Dec 15 20:38:22 2009 +0100
@@ -5,21 +5,22 @@
 (require 'ivan-common-code)
 
 (eval-when-compile
-  (require 'ivan-load)
-  (require 'sawfish))
+  (require 'ivan-load))
 
-(defun ivan-lisp-key-binding (keymap &optional eval-function)
+(defun ivan-lisp-key-binding (keymap)
   (ivan-keymap-define
    keymap
    "C-j" eval-last-sexp
-   "M-'" lisp-complete-symbol)
+   "M-'" lisp-complete-symbol
+   "<f8>" eval-buffer
+   "<f9>" edebug-defun)
   ;; no tabs when indenting
   (setq indent-tabs-mode nil))
 
 (defun ivan-lisp-emacs-hook ()
   (ivan-keymap-keep-global emacs-lisp-mode-map)
   (ivan-common-code-key-binding emacs-lisp-mode-map)
-  (ivan-lisp-key-binding emacs-lisp-mode-map)
+  (ivan-lisp-key-binding 'emacs-lisp-mode-map)
   (unless (string= "*scratch*" (buffer-name))
     (outline-minor-mode))
   (ivan-common-code))
@@ -32,19 +33,6 @@
 
 (add-hook 'lisp-interaction-mode-hook 'ivan-lisp-interaction-hook)
 
-(defun ivan-lisp-sawfish-hook ()
-  (ivan-keymap-keep-global sawfish-mode-map)
-  (ivan-lisp-key-binding sawfish-mode-map 'sawfish-eval-last-sexp))
-
-(add-hook 'sawfish-mode-hook 'ivan-lisp-sawfish-hook)
-
...
 

add fbiz to french recipients

File modified: lisp/emacs.d/ivan-bbdb.el

Change122 at Tue Dec 15 20:37:21 2009 +0100 by ivan@zen

diff -r 52b7e82bb00f -r 74d2289fcd5a lisp/emacs.d/ivan-bbdb.el
--- a/lisp/emacs.d/ivan-bbdb.el	Tue Dec 15 20:35:48 2009 +0100
+++ b/lisp/emacs.d/ivan-bbdb.el	Tue Dec 15 20:37:21 2009 +0100
@@ -57,7 +57,7 @@
   (let ((note (bbdb-record-notes rec))
         (email (bbdb-record-net rec)))
     (cond
-     ((and note (string-match "french\\|ffriend" note))
+     ((and note (string-match "french\\|ffriend\\|fbiz" note))
       'french)
      ((and email (string-match ivan-bbdb-french-match (car email)))
       'french)


 

new alia dp for dpkg --purge

File modified: bin/setenv.sh

Change121 at Tue Dec 15 20:35:48 2009 +0100 by ivan@zen

diff -r da80e49d05f9 -r 52b7e82bb00f bin/setenv.sh
--- a/bin/setenv.sh	Sat Dec 05 16:08:50 2009 +0100
+++ b/bin/setenv.sh	Tue Dec 15 20:35:48 2009 +0100
@@ -307,6 +307,7 @@
 alias acs='apt-cache search'
 alias aptitude='TERM=vt100 sudo aptitude'
 alias dpkg-buildpackage='dpkg-buildpackage -rfakeroot'
+alias dp='sudo dpkg --purge'
 alias ifdown='sudo ifdown'
 alias ifup='sudo ifup'
 alias lynx='lynx -nounderline'


 

hg2rss add little pages of changes

File modified: website/kanis.fr/hg2rss.py

Change120 at Sat Dec 05 16:08:50 2009 +0100 by debian@zen.lan

diff -r 1d6734c3b891 -r da80e49d05f9 website/kanis.fr/hg2rss.py
--- a/website/kanis.fr/hg2rss.py	Sun Nov 29 10:28:47 2009 +0100
+++ b/website/kanis.fr/hg2rss.py	Sat Dec 05 16:08:50 2009 +0100
@@ -10,7 +10,7 @@
            'files' : re.compile("files:       (.*)"),
            }
 
-def output_prelude(out_xml, out_html):
+def output_prelude_xml(out_xml):
     out_xml.write("""<?xml version="1.0" encoding="utf-8"?>
 <rss version="2.0">
   <channel>
@@ -19,12 +19,14 @@
     <description>List of Mercurial commits</description>
     <language>en-us</language>
     <generator>hg2rss.py</generator>""")
+
+def output_prelude_html(out_html, title):
     out_html.write(
         """<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 <html>
   <head>
-    <title>Mercurial commits</title>
-    <meta name="generator" content="hg2rsss.pyl">
+    <title>""" + title + """</title>
+    <meta name="generator" content="hg2rsss.py">
     <meta http-equiv="Content-Type"
           content="text/html; charset=utf-8">
     <link rel="stylesheet"
@@ -32,16 +34,61 @@
     <link rel="icon" href="ik16.png" type="image/png">
   </head>
   <body>
-    <h1>Mercurial commits</h1>
+    <h1>""" + title + """</h1>
     <!-- Page published by hg2rss.py begins here -->
 """)
 
-def output_end(out_xml, out_html):
+def output_end_xml(out_xml):
     out_xml.write("""  </channel>
...
 

original appt

File modified: lisp/misc/appt.el

Change119 at Thu Dec 10 17:56:17 2009 +0100 by ivan@ubuntu-pc.alis44.info

diff -r 654333786688 -r bfa59a3b391c lisp/misc/appt.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/misc/appt.el	Thu Dec 10 17:56:17 2009 +0100
@@ -0,0 +1,679 @@
+;;; appt.el --- appointment notification functions
+
+;; Copyright (C) 1989, 1990, 1994, 1998, 2001, 2002, 2003, 2004, 2005,
+;;   2006, 2007, 2008, 2009  Free Software Foundation, Inc.
+
+;; Author: Neil Mager <neilm@juliet.ll.mit.edu>
+;; Maintainer: Glenn Morris <rgm@gnu.org>
+;; Keywords: calendar
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;
+;; appt.el - visible and/or audible notification of
+;;           appointments from diary file.
+;;
+;;
+;; Thanks to  Edward M. Reingold for much help and many suggestions,
+;; And to many others for bug fixes and suggestions.
+;;
+;;
+;; This functions in this file will alert the user of a
+;; pending appointment based on his/her diary file.  This package
...
 

amelioration du cv

File modified: website/resume/resume.xml

Change118 at Tue Dec 01 09:57:47 2009 +0100 by Ivan Kanis@localhost

diff -r 1d6734c3b891 -r 654333786688 website/resume/resume.xml
--- a/website/resume/resume.xml	Sun Nov 29 10:28:47 2009 +0100
+++ b/website/resume/resume.xml	Tue Dec 01 09:57:47 2009 +0100
@@ -58,11 +58,11 @@
       <duty lang='fr'>
 	<i>Écriture d'évolution de communication data en C++.</i>
 
-        <i>Mise en place de la gestion de code source
-	Subversion.</i>
+        <i>Mise en place du serveur de gestion de configuration
+	Subversion avec Python sous Solaris.</i>
 
-	<i>Analyse des besoins en serveurs de l'équipe et
-	commandes à l'hébergeur informatique.</i>
+	<i>Analyse des besoins en serveurs de l'équipe de développement et
+	mise en place du parc informatique.</i>
 
 	<i>Rédaction de fiches de tests et qualification du moteur de
 	valorisation.</i>
@@ -134,9 +134,9 @@
         le partage de plusieurs distributions Linux et NetBSD sur le
         même serveur. </i>
 -->	
-        <i>Portage et configuration de plusieurs distributions de Linux
-        pour systèmes actuels.</i>
-        <i>Développement de pilotes pour systèmes embarqués en C.</i>
+        <i>Adapation de Linux pour ordinateur portable.</i>
+        <i>Développement de pilotes pour écran tactile en C et
+        Perlsous Linux.</i>
       </duty>
     </job>
 
@@ -198,8 +198,7 @@
 	communication interne d'une entreprise. Le logiciel est
 	en production à Jardiland.</p>
 
-        <i>Développement de l'agenda, l'annuaire et la gestion de
-	ressources en PHP.</i>
+        <i>Développement du portail Intranet de Jardiland en PHP et MySQL.</i>
 
         <i>Création de fonctions communes utilisées par les différentes
...
 

nterm add disclaimer

add bugs to fix put nterm core functions in alphabetical order too many fixes to list bump version

File modified: lisp/ivan/nterm.el

Change117 at Sun Nov 29 10:28:47 2009 +0100 by ivan@zen

diff -r bb765c5f31a1 -r 1d6734c3b891 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Nov 18 12:50:38 2009 +0100
+++ b/lisp/ivan/nterm.el	Sun Nov 29 10:28:47 2009 +0100
@@ -5,7 +5,7 @@
 ;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
 ;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
 ;; Created: 1 Oct 2009
-;; Version: 0.1
+;; Version: 0.2
 ;; Keywords: terminal shell
 
 ;; This file is not part of GNU Emacs.
@@ -13,6 +13,12 @@
 ;;; Commentary:
 ;; Copyright is a the bottome of this file
 
+;; Disclaimer: nterm is *alpha* software. It will blow up. Don't blame
+;; me, I warned you! A good terminal emulator architecture has display
+;; memory and a table of functions for each character coming in. I
+;; have been int the terminal emulation business for seven years so I
+;; ought to know.
+
 ;; Nterm is meant to be a full vt100 compatible terminal emulator. It
 ;; has the following features:
 
@@ -27,14 +33,19 @@
 ;;  - Double width character
 ;;  - Double height character
 
-;; Things that remains to do:
-;;  - US and UK character set.
-;;  - ANSI color
-;;  - VT52 compatibility mode
-;;  - Copy and paste mechanism
-;;  - xterm emulator
-;;  - Directory tracking
-;;  - Handle multiple instance
+;; Things that remains to be done:
+;; - fix line drawing single width characters
+;; - bind C-c C-c to interrupt
+;; - fix slow crolling
...
 

fix crash of htmlize (Carlsten patch)

File modified: lisp/muse/htmlize.el

Change116 at Wed Nov 18 12:50:38 2009 +0100 by debian@zen.lan

diff -r bc3a7e7c625e -r bb765c5f31a1 lisp/muse/htmlize.el
--- a/lisp/muse/htmlize.el	Thu Nov 12 19:50:36 2009 +0100
+++ b/lisp/muse/htmlize.el	Wed Nov 18 12:50:38 2009 +0100
@@ -867,7 +867,7 @@
   (let ((size-list
 	 (loop
 	  for f = face then (face-attribute f :inherit)
-	  until (eq f 'unspecified)
+	  until (or (not f) (eq f 'unspecified))
 	  for h = (face-attribute f :height)
 	  collect (if (eq h 'unspecified) nil h))))
     (reduce 'htmlize-merge-size (cons nil size-list))))


 

nterm turn debugging variable into a bool vector

File modified: lisp/ivan/nterm.el

Change115 at Thu Nov 12 19:50:36 2009 +0100 by ivan@zen

diff -r 429b5debccb0 -r bc3a7e7c625e lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Thu Nov 12 19:36:46 2009 +0100
+++ b/lisp/ivan/nterm.el	Thu Nov 12 19:50:36 2009 +0100
@@ -115,27 +115,25 @@
   "Map single width character to unicode double width equivalent.")
 
 ;;; Debugging
-(defvar nterm-debug-emulator 1)
-(defvar nterm-debug-vt100 2)
-(defvar nterm-debug-cursor 4)
-(defvar nterm-debug-ansi 8)
-(defvar nterm-debug-vt52 16)
+(defvar nterm-debug (make-bool-vector 5 nil)
+  "Debugging bool vector")
+
+(defvar nterm-debug-emulator 0)
+(defvar nterm-debug-vt100 1)
+(defvar nterm-debug-cursor 2)
+(defvar nterm-debug-ansi 3)
+(defvar nterm-debug-vt52 4)
 ;; TBD change debug to a bool vector
-;; (setq nterm-debug nterm-debug-emulator)
-;; (setq nterm-debug nterm-debug-vt100)
-;; (setq nterm-debug nterm-debug-cursor)
-;; cursor + emulator
-;; (setq nterm-debug 5)
-;; emulator + vt100
-;; (setq nterm-debug 3)
-;; turn off debugging
-;; (setq nterm-debug 0)
-
-(defvar nterm-debug 0
-  "Debugging variable.
-You can set to the following value:
-'nterm-debug-sgr debug Select graphic rendition
-'nterm-debug-emulator debug emulator")
+;; (aset nterm-debug nterm-debug-emulator t)
+;; (aset nterm-debug nterm-debug-emulator nil)
+;; (aset nterm-debug nterm-debug-vt100 t)
+;; (aset nterm-debug nterm-debug-vt100 nil)
+;; (aset nterm-debug nterm-debug-cursor t)
...
 

nterm add special BDF font.

Move glyph.txt to normal.txt Update nterm-gr with special font

File modified: lisp/ivan/Makefile lisp/ivan/glyph.txt lisp/ivan/normal.txt lisp/ivan/nterm-gr.el lisp/ivan/nterm.el lisp/ivan/special.txt

Change114 at Thu Nov 12 19:36:46 2009 +0100 by ivan@zen

diff -r 8528e149c341 -r 429b5debccb0 lisp/ivan/special.txt
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/ivan/special.txt	Thu Nov 12 19:36:46 2009 +0100
@@ -0,0 +1,3073 @@
+STARTCHAR 0x2121
+ENCODING 8481
+SWIDTH 1000 0
+DWIDTH 24 0
+BBX 24 24 0 -2
+BITMAP
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+000000
+ENDCHAR
+
+STARTCHAR 0x2321
+ENCODING 8993
+SWIDTH 1000 0
+DWIDTH 24 0
+BBX 24 24 0 -2
...
 

nterm support for double height characters

Move cursor to nterm state from vt100 state. Add foreground and background color for pictures. Save window excursion when blinking. Reducte size of nterm-vt100-char-insert with two helper functions. Change character set to uk, special or normal.

File modified: lisp/ivan/nterm.el

Change113 at Thu Nov 12 19:33:53 2009 +0100 by ivan@zen

diff -r fb7d6b38edf4 -r 8528e149c341 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Nov 10 13:53:12 2009 +0100
+++ b/lisp/ivan/nterm.el	Thu Nov 12 19:33:53 2009 +0100
@@ -18,17 +18,17 @@
 
 ;;  - G0 G1 switching with shift in and shift out
 ;;  - special graphics characters (used for line drawing)
-;;  - US and UK character set.
 ;;  - blinking, bright, underline and reverse rendition
 ;;  - scroll up and down including within top and bottom margin
 ;;  - switch terminal background color
 ;;  - switch between 80 and 132 columns screen
 ;;  - tabulation set and reset
 ;;  - all VT100 escape sequences are handled
+;;  - Double width character
+;;  - Double height character
 
 ;; Things that remains to do:
-;;  - Double width character
-;;  - Double height character
+;;  - US and UK character set.
 ;;  - ANSI color
 ;;  - VT52 compatibility mode
 ;;  - Copy and paste mechanism
@@ -150,12 +150,16 @@
   "List of keys to preserve")
 
 ;; From http://www.inwap.com/pdp10/ansicode.txt
+(defvar nterm-state nil
+  "State of nterm emulator")
+
 (defvar nterm-dispatch nil
   "Current dispatch table")
 
 (defvar nterm-blink-time 1
   "Time in second for blinking.
 Set to nil if you want to disable blinking")
+;;; core nterm functions
 (defmacro nterm-defdispatch (dispatch-list)
   "Create a dispatch table from DISPATCH-LIST."
   `(let* ((dispatch-name (symbol-name (nth 0 ,dispatch-list)))
...
 

nterm improvements

Don't trust emacs cursor position. Preliminary support for double width characters.

File modified: lisp/ivan/glyph.txt lisp/ivan/nterm-gr.el lisp/ivan/nterm.el

Change112 at Tue Nov 10 13:53:12 2009 +0100 by debian@zen.lan

diff -r 67490ebfe3d6 -r fb7d6b38edf4 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Nov 04 22:39:24 2009 +0100
+++ b/lisp/ivan/nterm.el	Tue Nov 10 13:53:12 2009 +0100
@@ -31,8 +31,10 @@
 ;;  - Double height character
 ;;  - ANSI color
 ;;  - VT52 compatibility mode
-;;  - Copy paste mechanism
+;;  - Copy and paste mechanism
 ;;  - xterm emulator
+;;  - Directory tracking
+;;  - Handle multiple instance
 
 ;; I think nterm is easier to maintain than term. One look at term's
 ;; term-emulate-terminal function should convince anyone that term
@@ -54,6 +56,13 @@
 
 ;; The latest version is at http://kanis.fr/hg/lisp/ivan/nterm.el
 
+;; FAQ
+;; Q: You say "US and UK character set.".  That doesn't mean
+;; users can't choose, say, utf-8?
+;; A: Nope, it's vt100 character set, 8 bit character are just ignored
+;; for now
+
+
 ;;; THANKS:
 
 ;;; BUGS:
@@ -76,6 +85,8 @@
   (defvar nterm-vt52-escape-y-dispatch-line)
   (defvar nterm-vt52-escape-y-dispatch-col))
 
+(require 'nterm-gr)
+
 (defvar nterm-mode-hook nil
   "Hook run when entering nterm mode.")
 
@@ -96,7 +107,7 @@
         (unicode ?\uff01)
         (list '(( ?\s  . ?\u3000)))) ;; double width space
...
 

resume add picture to short resume

File modified: website/resume/Makefile website/resume/latex.tmpl website/resume/mugshot.jpg website/resume/resume.xml

Change111 at Wed Nov 04 22:39:24 2009 +0100 by ivan@zen

diff -r be078ac74db9 -r 67490ebfe3d6 website/resume/resume.xml
--- a/website/resume/resume.xml	Sat Oct 31 20:07:46 2009 +0100
+++ b/website/resume/resume.xml	Wed Nov 04 22:39:24 2009 +0100
@@ -460,15 +460,15 @@
     <title lang='en'>Other</title>
     <title lang='fr'>Divers</title>
 
-    <p lang='en'>Author of educational software for the Palm
-    Pilot: |PocketKanji|kanis.fr/pocketkanji.html|</p>
+    <p lang='en'>Work for a non profit organisation called ALIS44 that
+    repairs computers to give to people in need.</p>
 
     <p lang='en'>Author of
     |Multiboot with GRUB|www.tldp.org/HOWTO/Multiboot-with-GRUB.html|
     which is part of the Linux documentation.</p>
 
-    <p lang='fr'>Auteur de logiciels éducatifs pour le Palm Pilot :
-    |PocketKanji|kanis.fr/pocketkanji.html|</p>
+    <p lang='fr'>Bénevole à l'association ALIS44 qui restaure des
+    ordinateurs pour des personnes démunies.</p>
 
     <p lang='fr'>Auteur de
     |Multiboot with GRUB|www.tldp.org/HOWTO/Multiboot-with-GRUB.html|


 

emacs init jiggle a few thing, got starting time under 3 seconds

File modified: lisp/emacs.d/init.el lisp/emacs.d/ivan-fun.el lisp/emacs.d/ivan-lisp.el lisp/emacs.d/ivan-load.el lisp/emacs.d/ivan-message.el lisp/emacs.d/ivan-start.el lisp/emacs.d/ivan-var.el lisp/emacs.d/ivan-w3m.el

Change110 at Sat Oct 31 20:07:46 2009 +0100 by ivan@zen

diff -r b2bd7978542c -r be078ac74db9 lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Sat Oct 31 20:06:20 2009 +0100
+++ b/lisp/emacs.d/ivan-w3m.el	Sat Oct 31 20:07:46 2009 +0100
@@ -7,8 +7,11 @@
   (require 'ivan-var)
   (require 'browse-url)
   (require 'wget)
-  (require 'w3m)
-  (require 'w3m-search))
+  (require 'w3m-search)
+  (require 'w3m))
+
+(eval-after-load 'w3m
+  '(setcdr (assoc 13 w3m-minor-mode-map) 'ivan-w3m-view-url))
 
 (defun ivan-w3m ()
   "Start w3m or switch to buffer"
@@ -81,8 +84,6 @@
 
 (add-hook 'w3m-mode-hook 'ivan-w3m-hook)
 
-(setcdr (assoc 13 w3m-minor-mode-map) 'ivan-w3m-view-url)
-
 (setq
  browse-url-browser-function 'w3m-browse-url
  w3m-default-save-directory "~/tmp"


 

newsticker face nit

File modified: lisp/emacs.d/ivan-newsticker.el

Change109 at Sat Oct 31 20:06:20 2009 +0100 by ivan@zen

diff -r e7a5ac843cc2 -r b2bd7978542c lisp/emacs.d/ivan-newsticker.el
--- a/lisp/emacs.d/ivan-newsticker.el	Thu Oct 29 20:09:27 2009 +0100
+++ b/lisp/emacs.d/ivan-newsticker.el	Sat Oct 31 20:06:20 2009 +0100
@@ -56,7 +56,7 @@
  newsticker-obsolete-item-face normal
  newsticker-old-item-face normal
  newsticker-statistics-face normal
- newsticker-treeview-immortal-face blue 
+ newsticker-treeview-immortal-face blue
  newsticker-treeview-old-face blue
  newsticker-treeview-new-face yellow
  newsticker-treeview-face normal


 

w3m and gnus fix hitting return on a link in gnus should pop up w3m

File modified: lisp/emacs.d/ivan-w3m.el

Change108 at Thu Oct 29 20:09:27 2009 +0100 by ivan@zen

diff -r 8695c70d811b -r e7a5ac843cc2 lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Sun Oct 25 12:34:17 2009 +0100
+++ b/lisp/emacs.d/ivan-w3m.el	Thu Oct 29 20:09:27 2009 +0100
@@ -49,7 +49,8 @@
   (interactive "P")
   (if arg
       (ivan-fun-browse (w3m-url-valid (w3m-anchor)))
-    (w3m-view-this-url)))
+    (w3m-view-this-url)
+    (switch-to-buffer "*w3m*")))
 
 (defun ivan-w3m-wget (arg)
   "Download anchor, image, or current page.
@@ -80,6 +81,8 @@
 
 (add-hook 'w3m-mode-hook 'ivan-w3m-hook)
 
+(setcdr (assoc 13 w3m-minor-mode-map) 'ivan-w3m-view-url)
+
 (setq
  browse-url-browser-function 'w3m-browse-url
  w3m-default-save-directory "~/tmp"


 

org display code source in orange

File modified: lisp/emacs.d/ivan-org.el

Change107 at Sun Oct 25 12:34:17 2009 +0100 by ivan@zen

diff -r e5093f9a0e25 -r 8695c70d811b lisp/emacs.d/ivan-org.el
--- a/lisp/emacs.d/ivan-org.el	Sun Oct 25 12:33:53 2009 +0100
+++ b/lisp/emacs.d/ivan-org.el	Sun Oct 25 12:34:17 2009 +0100
@@ -206,6 +206,7 @@
  org-agenda-date-weekend blue
  org-agenda-done normal
  org-agenda-structure yellow
+ org-code orange
  org-date normal
  org-done green
  org-ellipsis normal


 

nterm keep C-o bound to other window

File modified: lisp/emacs.d/ivan-nterm.el

Change106 at Sun Oct 25 12:33:53 2009 +0100 by ivan@zen

diff -r 2b9a724533e3 -r e5093f9a0e25 lisp/emacs.d/ivan-nterm.el
--- a/lisp/emacs.d/ivan-nterm.el	Sun Oct 25 12:33:17 2009 +0100
+++ b/lisp/emacs.d/ivan-nterm.el	Sun Oct 25 12:33:53 2009 +0100
@@ -16,9 +16,8 @@
   (require 'nterm))
 
 (defun ivan-nterm-hook ()
-  (define-key nterm-mode-map [27] nil)
-  (ivan-keymap-keep-global nterm-mode-map)
-  (define-key nterm-mode-map [27] 'nterm-vt100-key))
+  (define-key nterm-vt100-mode-map (kbd "C-o") 'other-window)
+  (define-key nterm-vt52-mode-map (kbd "C-o") 'other-window))
 
 (add-hook 'nterm-mode-hook 'ivan-nterm-hook)
 


 

M-i S launches term

File modified: lisp/emacs.d/ivan-keymap.el

Change105 at Sun Oct 25 12:33:17 2009 +0100 by ivan@zen

diff -r 092fd7eb9853 -r 2b9a724533e3 lisp/emacs.d/ivan-keymap.el
--- a/lisp/emacs.d/ivan-keymap.el	Sun Oct 25 12:32:42 2009 +0100
+++ b/lisp/emacs.d/ivan-keymap.el	Sun Oct 25 12:33:17 2009 +0100
@@ -97,6 +97,7 @@
  "p" 'pr-ps-fast-fire
  "r" 'ivan-fun-remember
  "s" (if (eq window-system 'w32) 'ivan-comint-shell 'nterm)
+ "S" 'ivan-term
  "t" 'ivan-org
  "u" 'w3m-goto-url
  "v" 'volume


 

dired set image cache in ~/tmp

File modified: lisp/emacs.d/ivan-dired.el lisp/emacs.d/ivan-var.el

Change104 at Sun Oct 25 12:32:42 2009 +0100 by ivan@zen

diff -r b4f1aa8c5d23 -r 092fd7eb9853 lisp/emacs.d/ivan-var.el
--- a/lisp/emacs.d/ivan-var.el	Sun Oct 25 11:51:45 2009 +0100
+++ b/lisp/emacs.d/ivan-var.el	Sun Oct 25 12:32:42 2009 +0100
@@ -8,7 +8,6 @@
   (require 'calendar)
   (require 'dabbrev)
   (require 'flyspell)
-  (require 'image-dired)
   (require 'imenu)
   (require 'ispell)
   (require 'man)
@@ -120,12 +119,6 @@
  ;; Don't show the splash screen, it gets annoying
  inhibit-startup-message t
 
- ;; Don't stick these in ~/emacs.d it's under source control
- image-dired-dir "~/keep/image-dired/"
- image-dired-db-file "~/keep/image-dired/.image-dired_db"
- image-dired-temp-image-file "~/keep/image-dired/.image-dired_temp"
- image-dired-gallery-dir "~/keep/image-dired/.image-dired_gallery"
-
  ;; aspell comes up with more alternatives
  ispell-program-name "aspell"
 


 

dired keep global keys in editable mode

File modified: lisp/emacs.d/ivan-dired.el

Change103 at Sun Oct 25 11:51:45 2009 +0100 by ivan@zen

diff -r 60c601ab26e0 -r b4f1aa8c5d23 lisp/emacs.d/ivan-dired.el
--- a/lisp/emacs.d/ivan-dired.el	Wed Oct 21 10:01:14 2009 +0200
+++ b/lisp/emacs.d/ivan-dired.el	Sun Oct 25 11:51:45 2009 +0100
@@ -51,6 +51,11 @@
 
 (add-hook 'dired-load-hook 'ivan-dired-load-hook)
 
+(defun ivan-wdired-hook ()
+  (ivan-keymap-keep-global wdired-mode-map))
+
+(add-hook 'wdired-mode-hook 'ivan-wdired-hook)
+
 (setq
  dired-dwim-target t
  dired-guess-shell-alist-user


 

nterm fix header for elpa

File modified: lisp/ivan/nterm.el

Change102 at Wed Oct 21 10:01:14 2009 +0200 by debian@zen.lan

diff -r 9759d3212194 -r 60c601ab26e0 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Oct 21 09:55:55 2009 +0200
+++ b/lisp/ivan/nterm.el	Wed Oct 21 10:01:14 2009 +0200
@@ -1,6 +1,18 @@
 ;;; nterm.el --- New TERMinal emulator
 
+;; Copyright (C) 2009 Ivan Kanis
+
+;; Author: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Maintainer: Ivan Kanis <look-for-me@your-favorite-search.engine>
+;; Created: 1 Oct 2009
+;; Version: 0.1
+;; Keywords: terminal shell
+
+;; This file is not part of GNU Emacs.
+
 ;;; Commentary:
+;; Copyright is a the bottome of this file
+
 ;; Nterm is meant to be a full vt100 compatible terminal emulator. It
 ;; has the following features:
 


 

nterm start vt52 emulator emulator

File modified: lisp/ivan/nterm.el

Change101 at Wed Oct 21 09:55:55 2009 +0200 by debian@zen.lan

diff -r df339aaef240 -r 9759d3212194 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon Oct 19 11:53:07 2009 +0200
+++ b/lisp/ivan/nterm.el	Wed Oct 21 09:55:55 2009 +0200
@@ -19,18 +19,24 @@
 ;;  - Double height character
 ;;  - ANSI color
 ;;  - VT52 compatibility mode
+;;  - Copy paste mechanism
+;;  - xterm emulator
 
 ;; I think nterm is easier to maintain than term. One look at term's
 ;; term-emulate-terminal function should convince anyone that term
 ;; cannot be maintained anymore. Compare with nterm equivalent
 ;; function nterm-emulate it is only 25 lines long.
 
-;; It has a recording mode (C-c r) so that you can record and replay
+;; It has a recording mode (f11) so that you can record and replay
 ;; traces. It has a terminal memory so that area of the terminal can
 ;; be redrawn for blinking and changing screen background. There is a
-;; memory dump mode (C-c m) that allows the programmer to examine the
+;; memory dump mode (f10) that allows the programmer to examine the
 ;; memory.
 
+;; The recorder takes a trace of characters received by the
+;; terminal. Someone can easily reproduce a bug by replaying the trace
+;; both on xterm and nterm.
+
 ;; It's not complete yet but it passes the first three tests of
 ;; vttest. I will get back to it when I have time.
 
@@ -54,7 +60,9 @@
   (defvar nterm-vt100-escape-dispatch)
   (defvar nterm-vt100-bracket-dispatch)
   (defvar nterm-vt100-hash-dispatch)
-  (defvar nterm-vt100-open-parenthesis-dispatch))
+  (defvar nterm-vt100-open-parenthesis-dispatch)
+  (defvar nterm-vt52-escape-y-dispatch-line)
+  (defvar nterm-vt52-escape-y-dispatch-col))
 
 (defvar nterm-mode-hook nil
   "Hook run when entering nterm mode.")
...
 

nterm change screenshot with aptitude

File modified: website/kanis.fr/nterm.muse

Change100 at Mon Oct 19 11:53:07 2009 +0200 by ivan@zen

diff -r 6dbdf11567e8 -r df339aaef240 website/kanis.fr/nterm.muse
--- a/website/kanis.fr/nterm.muse	Mon Oct 19 11:23:55 2009 +0200
+++ b/website/kanis.fr/nterm.muse	Mon Oct 19 11:53:07 2009 +0200
@@ -1,5 +1,8 @@
 #title nterm
 
+
+[[nterm-aptitude.png][nterm running aptitude]]
+
 Nterm is meant to be a full vt100 compatible terminal emulator. It has
 the following features:
 
@@ -16,7 +19,6 @@
 Things that remains to do:
  - Double width character
  - Double height character
- - Sanitize keyboard map
  - ANSI color
  - VT52 compatibility mode
 
@@ -34,5 +36,3 @@
 will get back to it when I have time.
 
 Should you want to try it, [[http://kanis.fr/hg/lisp/ivan/nterm.el][here is the code]].
-
-[[nterm.png][nterm]]


 

nterm add picture of nterm running aptitude

File modified: website/kanis.fr/nterm-aptitude.png

Change99 at Mon Oct 19 11:23:55 2009 +0200 by ivan@zen

diff -r 343db90879ec -r 6dbdf11567e8 website/kanis.fr/nterm-aptitude.png
Binary file website/kanis.fr/nterm-aptitude.png has changed


 

ivan-nterm set my keybindings

File modified: lisp/emacs.d/Makefile lisp/emacs.d/init.el lisp/emacs.d/ivan-nterm.el

Change98 at Mon Oct 19 11:23:33 2009 +0200 by ivan@zen

diff -r 6ff65bd03127 -r 343db90879ec lisp/emacs.d/ivan-nterm.el
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/emacs.d/ivan-nterm.el	Mon Oct 19 11:23:33 2009 +0200
@@ -0,0 +1,45 @@
+;;; ivan-nterm.el --- Describe me
+
+;;; Commentary:
+
+;;; THANKS:
+
+;;; BUGS:
+
+;;; INSTALLATION:
+
+;;; Code:
+
+(eval-when-compile
+  (require 'ivan-keymap)
+  (require 'ivan-load)
+  (require 'nterm))
+
+(defun ivan-nterm-hook ()
+  (define-key nterm-mode-map [27] nil)
+  (ivan-keymap-keep-global nterm-mode-map)
+  (define-key nterm-mode-map [27] 'nterm-vt100-key))
+
+(add-hook 'nterm-mode-hook 'ivan-nterm-hook)
+
+;; Local Variables:
+;; compile-command: "make"
+;; End:
+
+;; Copyright (C) 2009 Ivan Kanis
+;; Author: Ivan Kanis
+;; $Id$
+;;
+;; This program is free software ; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation ; either version 2 of the License, or
+;; (at your option) any later version.
+;;
...
 

hgignore add temporary emacs files

File modified: .hgignore

Change97 at Mon Oct 19 11:22:52 2009 +0200 by ivan@zen

diff -r 8809b2188121 -r 6ff65bd03127 .hgignore
--- a/.hgignore	Mon Oct 19 11:20:36 2009 +0200
+++ b/.hgignore	Mon Oct 19 11:22:52 2009 +0200
@@ -21,3 +21,6 @@
 *.aux
 *.dvi
 *.log
+*.orig
+\#*
+.\#*


 

setenv make the script work on Debian

File modified: bin/setenv.sh

Change96 at Mon Oct 19 11:20:36 2009 +0200 by ivan@zen

diff -r f01e10dcd1c0 -r 8809b2188121 bin/setenv.sh
--- a/bin/setenv.sh	Mon Oct 19 11:19:15 2009 +0200
+++ b/bin/setenv.sh	Mon Oct 19 11:20:36 2009 +0200
@@ -4,7 +4,12 @@
 # input needle haystack
 match() {
     # backslash forward slash
-    back=$(echo $1 | sed -e 's/\//\\\\\//g')
+    if test X${VENDOR} = Xubuntu
+    then
+        back=$(echo $1 | sed -e 's/\//\\\\\//g')
+    else 
+        back=$(echo $1 | sed -e 's/\//\\\//g')
+    fi
     needle=$(echo $2 | sed -e 's/.*\('$back'\).*/\1/')
     if [ "$1" = "$needle" ]
     then
@@ -42,7 +47,10 @@
     then
 	. ${file}
 	echo ${DISTRIB_ID} | tr [A-Z] [a-z]
-    fi 
+    elif [ -f /etc/debian_version ]
+    then
+        echo debian
+    fi
 }
 
 # TBD add Solaris and AIX
@@ -52,6 +60,9 @@
     then
 	. ${file}
 	echo ${DISTRIB_RELEASE}
+    elif [ -f /etc/debian_version ]
+    then
+	echo $(cat /etc/debian_version)
     fi 
 }
 
@@ -325,7 +336,7 @@
 # main
...
 

nterm switch to buffer *nterm* when it exists

don't home the cursor with DECAWM, this makes aptitude work

File modified: lisp/ivan/nterm.el

Change95 at Mon Oct 19 11:19:15 2009 +0200 by ivan@zen

diff -r cebd3f26bb45 -r f01e10dcd1c0 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon Oct 19 09:48:11 2009 +0200
+++ b/lisp/ivan/nterm.el	Mon Oct 19 11:19:15 2009 +0200
@@ -17,7 +17,6 @@
 ;; Things that remains to do:
 ;;  - Double width character
 ;;  - Double height character
-;;  - Sanitize keyboard map
 ;;  - ANSI color
 ;;  - VT52 compatibility mode
 
@@ -144,7 +143,9 @@
 ;;;###autoload
 (defun nterm ()
   (interactive)
-  (nterm-mode))
+  (if (get-buffer nterm-buffer-name)
+      (switch-to-buffer nterm-buffer-name)
+    (nterm-mode)))
 
 (defun nterm-emulate (process output)
   "Dispatch characters from process"
@@ -1006,8 +1007,7 @@
 (defun nterm-vt100-decawm (flag)
   "DECAWM – Auto Wrap Mode (DEC Private)"
   (if (= (logand nterm-debug nterm-debug-vt100) nterm-debug-vt100)
-      (message "DECAWM %s" (if flag "set" "reset")))
-  (nterm-vt100-home))
+      (message "DECAWM %s" (if flag "set" "reset"))))
 
 (defun nterm-vt100-decckm (flag)
   "DECCKM – Column Mode (DEC Private)"


 

nterm keyboard improvements

Add a list of keys to preserve set to C-x. Implement DECCKM keypad mode. Handle keypad keys. Setup nterm-mode-map in a function. Don't wrap cursor to the top anymore, this fixes aptitude. Put record column as a global variable.

File modified: lisp/ivan/nterm.el

Change94 at Mon Oct 19 09:48:11 2009 +0200 by ivan@zen

diff -r e7b7e452ca9a -r cebd3f26bb45 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Fri Oct 16 08:26:57 2009 +0200
+++ b/lisp/ivan/nterm.el	Mon Oct 19 09:48:11 2009 +0200
@@ -113,23 +113,18 @@
   ["black" "red3" "green3" "yellow3" "blue2" "magenta3" "cyan3" "white"])
 
 (defvar nterm-mode-map nil
-  "Nterm keymap.")
+  "Nterm keymap for nterm, use `nterm-mode-hook' to customize.")
 
 (defvar nterm-memory nil
   "The memory of the terminal, not for customization")
 
+(defvar nterm-key-preserve '(?)
+  "List of keys to preserve")
+
 ;; From http://www.inwap.com/pdp10/ansicode.txt
 (defvar nterm-dispatch nil
   "Current dispatch table")
 
-(defvar nterm-vt100-color
-  ;;  normal  bright
-  '(("black"  "gray20")
-    ("gray80" "white"))
-  "Color of a vt100.
-One of the most misunderstood term is bold. Bold is just a
-brighter color on a VT terminal, it is not a bold font.")
-
 (defvar nterm-blink-time 1
   "Time in second for blinking.
 Set to nil if you want to disable blinking")
@@ -181,6 +176,7 @@
 (defun nterm-mode ()
   "Major mode for emulating a terminal.
 Entry to this mode runs the hooks on `nterm-mode-hook'."
+
   (interactive)
   (get-buffer-create nterm-buffer-name)
   (pop-to-buffer nterm-buffer-name)
@@ -188,6 +184,7 @@
   (set (make-local-variable 'nterm-process)
...
 

nterm add documentation

File modified: lisp/ivan/nterm.el website/kanis.fr/nterm.muse

Change93 at Fri Oct 16 08:26:57 2009 +0200 by ivan@zen

diff -r 22b430f2d155 -r e7b7e452ca9a website/kanis.fr/nterm.muse
--- a/website/kanis.fr/nterm.muse	Thu Oct 15 16:40:44 2009 +0200
+++ b/website/kanis.fr/nterm.muse	Fri Oct 16 08:26:57 2009 +0200
@@ -1,8 +1,37 @@
 #title nterm
 
-Nterm is a vt100 emulator for emacs. It's not complete yet but it
-passes the first three tests of vttest. I will get back to it when I
-have time.
+Nterm is meant to be a full vt100 compatible terminal emulator. It has
+the following features:
+
+ - G0 G1 switching with shift in and shift out
+ - special graphics characters (used for line drawing)
+ - US and UK character set.
+ - blinking, bright, underline and reverse rendition
+ - scroll up and down including within top and bottom margin
+ - switch terminal background color
+ - switch between 80 and 132 columns screen
+ - tabulation set and reset
+ - all VT100 escape sequences are handled
+
+Things that remains to do:
+ - Double width character
+ - Double height character
+ - Sanitize keyboard map
+ - ANSI color
+ - VT52 compatibility mode
+
+I think nterm is easier to maintain than term. One look at term's
+term-emulate-terminal function should convince anyone that term cannot be
+maintained anymore. Compare with nterm equivalent function nterm-emulate
+it is only 25 lines long.
+
+It has a recording mode (C-c r) so that you can record and replay
+traces. It has a terminal memory so that area of the terminal can be
+redrawn for blinking and changing screen background. There is a memory
+dump mode (C-c m) that allows the programmer to examine the memory.
+
+It's not complete yet but it passes the first three tests of vttest. I
+will get back to it when I have time.
...
 

nterm add web page

File modified: website/kanis.fr/Makefile website/kanis.fr/nterm.muse website/kanis.fr/nterm.png website/kanis.fr/projects.muse

Change92 at Thu Oct 15 16:40:44 2009 +0200 by ivan@zen

diff -r 6186bbf5584c -r 22b430f2d155 website/kanis.fr/projects.muse
--- a/website/kanis.fr/projects.muse	Thu Oct 15 16:39:39 2009 +0200
+++ b/website/kanis.fr/projects.muse	Thu Oct 15 16:40:44 2009 +0200
@@ -5,6 +5,9 @@
 interface, Japanese learning tool, web browser, organizer, calendar,
 etc... I even sometime use it for writing programs.
 
+I have enjoyed my time off to create a vt100 emulator for emacs called
+[[nterm][nterm]].
+
 Recently I have to use Windows a lot, I have made [[winpack][Winpack]] so that's it
 bearable. It's a file with a collection of free software.
 


 

message toggle japanese input

File modified: lisp/emacs.d/ivan-message.el

Change91 at Thu Oct 15 16:39:39 2009 +0200 by ivan@zen

diff -r d64c14aa8bc3 -r 6186bbf5584c lisp/emacs.d/ivan-message.el
--- a/lisp/emacs.d/ivan-message.el	Thu Oct 15 16:39:17 2009 +0200
+++ b/lisp/emacs.d/ivan-message.el	Thu Oct 15 16:39:39 2009 +0200
@@ -124,7 +124,8 @@
 
 (defun ivan-message-setup-japanese ()
   (setq ivan-var-reply-lang "japanese")
-  (ivan-japanese-input))
+  (ivan-japanese-input)
+  (ivan-fun-spell ivan-english-dictionary-name 'set))
 
 (add-hook 'message-mode-hook 'auto-fill-mode)
 


 

add english quote

File modified: conf/quotes.english

Change90 at Thu Oct 15 16:39:17 2009 +0200 by ivan@zen

diff -r b066803c0e2d -r d64c14aa8bc3 conf/quotes.english
--- a/conf/quotes.english	Thu Oct 15 16:28:56 2009 +0200
+++ b/conf/quotes.english	Thu Oct 15 16:39:17 2009 +0200
@@ -545,3 +545,8 @@
 A facility for quotation covers the absence of original thought.
     -- Lord Peter Wimsey
 %
+It's not always the actual work that is the hardest part of a job and
+success—it's the decisions, compromises and choices that need to be
+made.
+    -- Barbara Abrams Mintzer
+%


 

hg2rss fix empty key index that caused a crash

File modified: website/kanis.fr/hg2rss.py

Change89 at Thu Oct 15 16:28:56 2009 +0200 by ivan@zen

diff -r 5698cef24560 -r b066803c0e2d website/kanis.fr/hg2rss.py
--- a/website/kanis.fr/hg2rss.py	Thu Oct 15 15:57:47 2009 +0200
+++ b/website/kanis.fr/hg2rss.py	Thu Oct 15 16:28:56 2009 +0200
@@ -89,19 +89,28 @@
 
         out_html.write("</pre>\n</div>\n")
 
+def init_value():
+    return { 'files' : "",
+             'user' : "",
+             'date' : "",
+             'changeset' : "",
+             'diff' : "",
+             'description' : "" }
+             
+
 if __name__ == "__main__":
     f = os.popen("hg log -r 2: -v -p")
     out_xml = open("/home/ivan/build/kanis.fr/hg.xml", "w")
     out_html = open("/home/ivan/build/kanis.fr/hg.html", "w")
     output_prelude(out_xml, out_html)
-    value = {}
+    value = init_value()
     values = []
     b_desc = False
     b_diff = False
     for line in f:
         if len(line) > 10 and line[:10] == "changeset:":
             values.append(value)
-            value = {}
+            value = init_value()
             b_desc = False
             b_diff = False
         if len(line) == 13 and line[:12] == "description:":


 

nterm implement blinking and cursor save

Ignore 8 bit character. Add delete and map it to space in character tables. Implement shift in and out. Implement character set G1. Use assq instead of assoc, I think it's faster.

File modified: lisp/ivan/nterm.el

Change88 at Thu Oct 15 15:57:47 2009 +0200 by ivan@zen

diff -r 94c0af31656b -r 5698cef24560 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Oct 14 17:11:19 2009 +0200
+++ b/lisp/ivan/nterm.el	Thu Oct 15 15:57:47 2009 +0200
@@ -128,22 +128,19 @@
         (char ?0))
     (while (< char-index length)
       (setq char (aref output char-index))
-      (if (> char (length (eval nterm-dispatch)))
+      (if (< char (length (eval nterm-dispatch)))
           (progn
-            (if (= (logand nterm-debug nterm-debug-emulator)
-                   nterm-debug-emulator)
-                (message "insert %x" char))
-            (nterm-vt100-char-self char))
-        (setq dispatch (aref (eval nterm-dispatch) char))
-        (if dispatch
-            (progn
+            (setq dispatch (aref (eval nterm-dispatch) char))
+            (if dispatch
+                (progn
+                  (if (= (logand nterm-debug nterm-debug-emulator)
+                         nterm-debug-emulator)
+                      (message "received 0x%x %c dispatch %S"
+                               char char dispatch))
+                  (funcall dispatch char))
               (if (= (logand nterm-debug nterm-debug-emulator)
                      nterm-debug-emulator)
-                  (message "received 0x%x %c dispatch %S"
-                           char char dispatch))
-              (funcall dispatch char))
-          (if (= (logand nterm-debug nterm-debug-emulator) nterm-debug-emulator)
-              (message "received 0x%x not handled" char))))
+                  (message "received 0x%x not handled" char)))))
       (incf char-index))))
 
 (defun nterm-mode ()
@@ -195,7 +192,7 @@
 (defun nterm-dcdwl-char (char)
   "Return doublewidth of CHAR.
 If it can't be found return a double width space"
-  (let ((dcdwl-char (cdr (assoc char nterm-double-width-alist))))
...
 

nterm implement all SGR attributes

File modified: lisp/ivan/nterm.el

Change87 at Wed Oct 14 17:11:19 2009 +0200 by ivan@zen

diff -r fbe9f57b41ba -r 94c0af31656b lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Oct 13 11:34:53 2009 +0200
+++ b/lisp/ivan/nterm.el	Wed Oct 14 17:11:19 2009 +0200
@@ -16,7 +16,6 @@
   (defvar nterm-dispatch)
   (defvar nterm-process)
   (defvar nterm-argument)
-  (defvar nterm-face)
   (defvar nterm-vt100-primary-dispatch)
   (defvar nterm-vt100-escape-dispatch)
   (defvar nterm-vt100-bracket-dispatch)
@@ -32,10 +31,6 @@
 (defvar nterm-buffer-name "*nterm*"
   "Name of the terminal buffer.")
 
-(defvar nterm-face nil
-  "Current face used by the terminal.
-Don't customize this.")
-
 (defvar nterm-height 24
   "Terminal height in lines.")
 
@@ -59,6 +54,7 @@
 (defvar nterm-debug-vt100 2)
 (defvar nterm-debug-cursor 4)
 (defvar nterm-debug-ansi 8)
+;; TBD change debug to a bool vector
 ;; (setq nterm-debug nterm-debug-emulator)
 ;; (setq nterm-debug nterm-debug-vt100)
 ;; (setq nterm-debug nterm-debug-cursor)
@@ -68,12 +64,6 @@
 ;; (setq nterm-debug 3)
 ;; turn off debugging
 ;; (setq nterm-debug 0)
-;; white background
-;;(setq nterm-default-foreground "black")
-;;(setq nterm-default-background "white")
-;; black bacground
-;; (setq nterm-default-foreground "white")
-;; (setq nterm-default-background "black")
 
...
 

nterm refactor cursor functions to noun-verb

File modified: lisp/ivan/nterm.el

Change86 at Tue Oct 13 11:34:53 2009 +0200 by ivan@zen

diff -r 8d5c66f99867 -r fbe9f57b41ba lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Oct 13 11:30:41 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 13 11:34:53 2009 +0200
@@ -231,58 +231,58 @@
     (or dcdwl-char ?\u3000)))
 
 ;;; Cursor functions (all coordinate are 0 based)
-(defun nterm-cursor-get-position ()
+(defun nterm-cursor-position-get ()
   "Return CONS of cursor-position (line . col)."
   (let ((cur-pos-line (nterm-cursor-get-line))
         (cur-pos-col (nterm-cursor-get-col)))
     (if (= (logand nterm-debug nterm-debug-cursor) nterm-debug-cursor)
-        (message "nterm-cursor-get-position line=%d col=%d"
+        (message "nterm-cursor-position-get line=%d col=%d"
                  cur-pos-line cur-pos-col))
     (cons cur-pos-line cur-pos-col)))
 
-(defun nterm-cursor-get-line ()
+(defun nterm-cursor-line-get ()
   "Returns the line number where the cursor is."
   (let ((get-line (- (line-number-at-pos) 1)))
     (if (> get-line nterm-height)
         (error "line out of range line=%d" get-line))
     (if (= (logand nterm-debug nterm-debug-cursor) nterm-debug-cursor)
-        (message "nterm-cursor-get-line col=%d" get-line))
+        (message "nterm-cursor-line-get col=%d" get-line))
     get-line))
 
-(defun nterm-cursor-get-col ()
+(defun nterm-cursor-col-get ()
   "Returns the column number where the cursor is."
   (let ((get-col (current-column)))
     (if (> get-col nterm-width)
         (error "col out of range col=%d" get-col))
     (if (= (logand nterm-debug nterm-debug-cursor) nterm-debug-cursor)
-        (message "nterm-cursor-get-col col=%d" get-col))
+        (message "nterm-cursor-col-get col=%d" get-col))
     get-col))
 
-(defun nterm-cursor-set-position (cursor-set)
...
 

nterm add support for DECSCNM

File modified: lisp/ivan/nterm.el

Change85 at Tue Oct 13 11:30:41 2009 +0200 by ivan@zen

diff -r c9372788c853 -r 8d5c66f99867 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Oct 13 08:21:53 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 13 11:30:41 2009 +0200
@@ -23,13 +23,6 @@
   (defvar nterm-vt100-hash-dispatch)
   (defvar nterm-vt100-open-parenthesis-dispatch))
 
-;; Macro to create a dispatch table
-(defvar nterm-default-foreground "white"
-  "Default terminal foreground.")
-
-(defvar nterm-default-background "black"
-  "Default terminal background.")
-
 (defvar nterm-mode-hook nil
   "Hook run when entering nterm mode.")
 
@@ -91,14 +84,24 @@
 (defvar nterm-record-enable nil
   "Enable recording")
 
-(defvar nterm-normal-color
+(defvar nterm-ansi-color
   ["black" "red3" "green3" "yellow3" "blue2" "magenta3" "cyan3" "white"])
 
+(defvar nterm-vt100-color
+  '((black . "black")
+    (white . "gray90")
+    (bold-black . "gray10")
+    (bold-white "white"))
+  "Color of a vt100.
+One of the most misunderstood term is bold. Bold is just a
+brighter color in a VT terminal, it is not a bold font.")
+
 (defvar nterm-mode-map nil
   "Nterm keymap.")
 
 ;;; Line attributes
-(defvar nterm-mem-line-decdwl 0)
+(defvar nterm-mem-line-decdwl 0
+  "Line is double width")
...
 

nterm pass vttest cursor motion test

set truncate line for emulator so that long line don't wrap new debugging for ansi fix up ansi and vt100 modes add backspace function that does not clobber argument add support for cursor motion embedded in escape sequence clear wrap flag when doing a backspace

File modified: lisp/ivan/nterm.el

Change84 at Tue Oct 13 08:21:53 2009 +0200 by ivan@zen

diff -r a6e9016a3e7e -r c9372788c853 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon Oct 12 17:25:21 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 13 08:21:53 2009 +0200
@@ -65,7 +65,7 @@
 (defvar nterm-debug-emulator 1)
 (defvar nterm-debug-vt100 2)
 (defvar nterm-debug-cursor 4)
-
+(defvar nterm-debug-ansi 8)
 ;; (setq nterm-debug nterm-debug-emulator)
 ;; (setq nterm-debug nterm-debug-vt100)
 ;; (setq nterm-debug nterm-debug-cursor)
@@ -73,6 +73,7 @@
 ;; (setq nterm-debug 5)
 ;; emulator + vt100
 ;; (setq nterm-debug 3)
+;; turn off debugging
 ;; (setq nterm-debug 0)
 ;; white background
 ;;(setq nterm-default-foreground "black")
@@ -103,32 +104,6 @@
   "The memory of the terminal, not for customization")
 
 ;; From http://www.inwap.com/pdp10/ansicode.txt
-(defvar nterm-ansi-mode
-  (vector (make-bool-vector 20 nil)
-          "GATM" ;  1 Guarded Area Transmit Mode, send all (VT132)
-          "KAM"  ;  2 Keyboard Action Mode, disable keyboard input
-          "CRM"  ;  3 Control Representation Mode, show all control chars
-          "IRM"  ;  4 Insertion/Replacement Mode, set insert mode (VT102)
-          "SRTM" ;  5 Status Report Transfer Mode, report after DCS
-          "ERM"  ;  6 ERasure Mode, erase protected and unprotected
-          "VEM"  ;  7 Vertical Editing Mode, IL/DL affect previous lines
-          nil    ;  8 reserved
-          nil    ;  9 reserved
-          "HEM"  ;  10 Horizontal Editing mode, ICH/DCH/IRM go backwards
-          "PUM"  ;  11 Positioning Unit Mode, use decipoints for HVP/etc
-          "SRM"  ;  12 Send Receive Mode, transmit without local echo
-          "FEAM" ;  13 Format Effector Action Mode, FE's are stored
-          "FETM" ;  14 Format Effector Transfer Mode, send only if stored
-          "MATM" ;  15 Multiple Area Transfer Mode, send all areas
...
 

nterm fix extent of erase display

File modified: lisp/ivan/nterm.el

Change83 at Mon Oct 12 17:25:21 2009 +0200 by ivan@zen

diff -r 75fecdcf07a6 -r a6e9016a3e7e lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon Oct 12 17:20:38 2009 +0200
+++ b/lisp/ivan/nterm.el	Mon Oct 12 17:25:21 2009 +0200
@@ -1007,7 +1007,7 @@
         (cond
          ((eq ed-number 0)
           (nterm-cursor-set-position (cons ed-line ed-col))
-          (nterm-blank-line ?\s ed-index (- (- nterm-width 1) ed-col) t))
+          (nterm-blank-line ?\s ed-index (- nterm-width ed-col) t))
          ((eq ed-number 1)
           (nterm-cursor-set-position (cons ed-line 0))
           (nterm-blank-line ?\s ed-index (+ ed-col 1) t))


 

nterm fixes for cursor test of vttest

use bitwise debug so one can have multiple debug fix scroll up with top and bottom margin add vt100 mode logic add wrapping support add switching between 80 and 132 columns support DECOM for homing improve DECSTBM fix tab not going all the way to the end of the screen

File modified: lisp/ivan/nterm.el

Change82 at Mon Oct 12 17:20:38 2009 +0200 by ivan@zen

diff -r c6eaf2726a7a -r 75fecdcf07a6 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sun Oct 11 12:33:32 2009 +0200
+++ b/lisp/ivan/nterm.el	Mon Oct 12 17:20:38 2009 +0200
@@ -62,16 +62,26 @@
   "Map single width character to unicode double width equivalent.")
 
 ;;; Debugging
-;; (setq nterm-debug 'nterm-debug-emulator)
-;; (setq nterm-debug 'nterm-debug-vt100)
-;; (setq nterm-debug 'nterm-debug-cursor)
-;; (setq nterm-debug nil)
-(setq nterm-default-foreground "black")
-(setq nterm-default-background "white")
+(defvar nterm-debug-emulator 1)
+(defvar nterm-debug-vt100 2)
+(defvar nterm-debug-cursor 4)
+
+;; (setq nterm-debug nterm-debug-emulator)
+;; (setq nterm-debug nterm-debug-vt100)
+;; (setq nterm-debug nterm-debug-cursor)
+;; cursor + emulator
+;; (setq nterm-debug 5)
+;; emulator + vt100
+;; (setq nterm-debug 3)
+;; (setq nterm-debug 0)
+;; white background
+;;(setq nterm-default-foreground "black")
+;;(setq nterm-default-background "white")
+;; black bacground
 ;; (setq nterm-default-foreground "white")
 ;; (setq nterm-default-background "black")
 
-(defvar nterm-debug nil
+(defvar nterm-debug 0
   "Debugging variable.
 You can set to the following value:
 'nterm-debug-sgr debug Select graphic rendition
@@ -148,6 +158,7 @@
       (progn
         (setq length nterm-width)
         (nterm-cursor-set-col 0)))
...
 

nterm add recorder functionality

File modified: lisp/ivan/nterm.el

Change81 at Sun Oct 11 12:33:32 2009 +0200 by ivan@zen

diff -r 88044def78fd -r c6eaf2726a7a lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Sat Oct 10 08:21:06 2009 +0200
+++ b/lisp/ivan/nterm.el	Sun Oct 11 12:33:32 2009 +0200
@@ -71,27 +71,15 @@
 ;; (setq nterm-default-foreground "white")
 ;; (setq nterm-default-background "black")
 
-(defvar nterm-mem-mode-map
-  (let ((map (make-sparse-keymap)))
-    (define-key map "q" 'kill-this-buffer)
-    (define-key map "t" 'nterm-mem-debug-char-toggle)
-    map)
-  "Keymap of the nterm memory dump mode")
-
-(defvar nterm-mem-buffer "*nterm mem*"
-  "Name of the buffer where to dump memory")
-
-(defvar nterm-mem-time 5
-  "Time in second that memory dump will refresh")
-
-(defvar nterm-mem-debug-char t
-  "Display char when set to t, hex when nil")
 (defvar nterm-debug nil
   "Debugging variable.
 You can set to the following value:
 'nterm-debug-sgr debug Select graphic rendition
 'nterm-debug-emulator debug emulator")
 
+(defvar nterm-record-enable nil
+  "Enable recording")
+
 (defvar nterm-normal-color
   ["black" "red3" "green3" "yellow3" "blue2" "magenta3" "cyan3" "white"])
 
@@ -151,77 +139,29 @@
   (interactive)
   (nterm-mode))
 
-(defun nterm-reset (char)
-  "Fill the screen and memory with one character CHAR.
-Home the cursor at the beginning."
...
 

nterm fixing various issues.

don't ouptut character greater than 128. fix dispatch message. fix order of collecting arguments. add support for ESC [ ?. add interrupt bound to C-c C-c. add DA response. fix tab greater than 8. be careful for SM or RM that are out of bound.

File modified: lisp/ivan/nterm.el

Change80 at Sat Oct 10 08:21:06 2009 +0200 by ivan@zen

diff -r f280dcd2f1be -r 88044def78fd lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Fri Oct 09 10:59:26 2009 +0200
+++ b/lisp/ivan/nterm.el	Sat Oct 10 08:21:06 2009 +0200
@@ -195,14 +195,14 @@
       (incf nterm-index))))
 
 (defun nterm-tab-clear ()
-  "Clear all tabs"
+  "Clear all tabs
+TBD use (make-vector nterm-width nil) instead"
   (let ((nterm-index 1)
         (tabs (cdr (assoc 'tab nterm-vt100-state))))
     (while (< nterm-index nterm-width)
       (aset tabs nterm-index nil)
       (incf nterm-index))))
 
-
 (defun nterm-blank-line (char line &optional length replace)
   "Insert LENGTH of CHAR at LINE.
 If LENGTH is nil use the terminal width If REPLACE is t
@@ -229,7 +229,10 @@
     (while (< char-index length)
       (setq char (aref output char-index))
       (if (> char (length (eval nterm-dispatch)))
-          (nterm-output-self char)
+          (progn
+            (if (eq nterm-debug 'nterm-debug-emulator)
+                (message "insert %x" char))
+            (nterm-output-self char))
         (setq dispatch (aref (eval nterm-dispatch) char))
         (if dispatch
             (progn
@@ -238,8 +241,8 @@
                            char char dispatch))
               (funcall dispatch char))
           (if (eq nterm-debug 'nterm-debug-emulator)
-              (message "received 0x%x not handled" char)))
-        (incf char-index)))))
+              (message "received 0x%x not handled" char))))
+      (incf char-index))))
 
...
 

nterm handle tab

File modified: lisp/ivan/nterm.el

Change79 at Fri Oct 09 10:59:26 2009 +0200 by ivan@zen

diff -r e0e35bbb8b67 -r f280dcd2f1be lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Fri Oct 09 10:54:23 2009 +0200
+++ b/lisp/ivan/nterm.el	Fri Oct 09 10:59:26 2009 +0200
@@ -1257,12 +1257,13 @@
 
 (defun nterm-vt100-tab (char)
   "Move cursor to the next tab."
-  (let ((tab-index (nterm-cursor-get-col))
-        (while (< tab-index nterm-width)
-          (if (aref (cdr (assoc 'tab nterm-vt100-state)) tab-index)
-              (setq tab-index) ; end loop
-            (incf tab-index)))
-        tab-index)))
+  (let ((tab-col (nterm-cursor-get-col)))
+    (while (< tab-col nterm-width)
+      (if (aref (cdr (assoc 'tab nterm-vt100-state)) tab-col)
+          (progn
+            (nterm-cursor-set-col tab-col)
+            (setq tab-col nterm-width))) ; end loop
+      (incf tab-col))))
 
 (defun nterm-vt100-tbc (char)
   "TBC -- Tabulation Clear - host to vt100"


 

nterm refactor cursor functions

File modified: lisp/ivan/nterm.el

Change78 at Fri Oct 09 10:54:23 2009 +0200 by ivan@zen

diff -r d48724ad819e -r e0e35bbb8b67 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Fri Oct 09 10:04:12 2009 +0200
+++ b/lisp/ivan/nterm.el	Fri Oct 09 10:54:23 2009 +0200
@@ -287,8 +287,8 @@
 
 (defun nterm-char-insert (char &optional replace)
   "Insert character, with face property"
-  (let* ((char-line (nterm-cur-line-0))
-         (char-col (nterm-cur-col-0))
+  (let* ((char-line (nterm-cursor-get-line))
+         (char-col (nterm-cursor-get-col))
          (line-attr
           (cdr (assoc 'line-attr (nth (+ char-line 1) nterm-memory))))
          (decdwl (and line-attr (aref line-attr nterm-mem-line-decdwl)))
@@ -312,78 +312,51 @@
   (let ((dcdwl-char (cdr (assoc char nterm-double-width-alist))))
     (or dcdwl-char ?\u3000)))
 
-;;; Cursor
-(defun nterm-cur-pos-1 ()
-  "Return CONS of cursor-position (line . col).
-Coordinate are 1 based."
-  (let ((cur-pos-line (nterm-cur-line-1))
-        (cur-pos-col (nterm-cur-col-1)))
+;;; Cursor functions (all coordinate are 0 based)
+(defun nterm-cursor-get-position ()
+  "Return CONS of cursor-position (line . col)."
+  (let ((cur-pos-line (nterm-cursor-get-line))
+        (cur-pos-col (nterm-cursor-get-col)))
     (if (eq nterm-debug 'nterm-debug-cursor)
-        (message "nterm-cur-pos-1 line=%d col=%d"
+        (message "nterm-cursor-get-position line=%d col=%d"
                  cur-pos-line cur-pos-col))
     (cons cur-pos-line cur-pos-col)))
 
-(defun nterm-cur-line-1 ()
-  "Returns the line number where the cursor is.
-Coordinate are 1 based"
-  (let ((cur-line (line-number-at-pos)))
+(defun nterm-cursor-get-line ()
+  "Returns the line number where the cursor is."
...
 

nterm handle keyboard input

File modified: lisp/ivan/nterm.el

Change77 at Fri Oct 09 10:04:12 2009 +0200 by ivan@zen

diff -r ef220cc23e59 -r d48724ad819e lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Oct 07 17:42:38 2009 +0200
+++ b/lisp/ivan/nterm.el	Fri Oct 09 10:04:12 2009 +0200
@@ -1,4 +1,4 @@
-;;; ntermr.el --- New TERminal emulator
+;;; nterm.el --- New TERMinal emulator
 
 ;;; Commentary:
 
@@ -62,6 +62,15 @@
   "Map single width character to unicode double width equivalent.")
 
 ;;; Debugging
+;; (setq nterm-debug 'nterm-debug-emulator)
+;; (setq nterm-debug 'nterm-debug-vt100)
+;; (setq nterm-debug 'nterm-debug-cursor)
+;; (setq nterm-debug nil)
+(setq nterm-default-foreground "black")
+(setq nterm-default-background "white")
+;; (setq nterm-default-foreground "white")
+;; (setq nterm-default-background "black")
+
 (defvar nterm-mem-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map "q" 'kill-this-buffer)
@@ -83,20 +92,11 @@
 'nterm-debug-sgr debug Select graphic rendition
 'nterm-debug-emulator debug emulator")
 
-;; (setq nterm-debug 'nterm-debug-emulator)
-;; (setq nterm-debug 'nterm-debug-vt100)
-;; (setq nterm-debug nil)
-(setq nterm-default-foreground "black")
-(setq nterm-default-background "white")
-
-
 (defvar nterm-normal-color
   ["black" "red3" "green3" "yellow3" "blue2" "magenta3" "cyan3" "white"])
 
 (defvar nterm-mode-map nil
-  "Nterm keymap.
...
 

nterm compiles clean.

Add new macro to define dispatch table. Add function to clear tabs. Display tabs within the memory dump. Implement TBC.

File modified: lisp/ivan/nterm.el

Change76 at Wed Oct 07 17:42:38 2009 +0200 by ivan@zen

diff -r 3d11e3e5537d -r ef220cc23e59 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Oct 07 14:03:23 2009 +0200
+++ b/lisp/ivan/nterm.el	Wed Oct 07 17:42:38 2009 +0200
@@ -15,21 +15,15 @@
   ;; Placate compiler
   (defvar nterm-dispatch)
   (defvar nterm-process)
-  (defvar nterm-collect)
-  (defvar nterm-face))
+  (defvar nterm-argument)
+  (defvar nterm-face)
+  (defvar nterm-vt100-primary-dispatch)
+  (defvar nterm-vt100-escape-dispatch)
+  (defvar nterm-vt100-bracket-dispatch)
+  (defvar nterm-vt100-hash-dispatch)
+  (defvar nterm-vt100-open-parenthesis-dispatch))
 
 ;; Macro to create a dispatch table
-(defmacro nterm-defdispatch (name length default handle comment)
-  `(progn (defvar ,name nil ,comment)
-          (setq ,name
-                (let ((primary-list (make-vector ,length (quote ,default)))
-                      (handle-list (quote ,handle)))
-                  (while handle-list
-                    (aset primary-list (car handle-list)
-                          (cadr handle-list))
-                    (setq handle-list (cddr handle-list)))
-                  primary-list)) ,comment))
-
 (defvar nterm-default-foreground "white"
   "Default terminal foreground.")
 
@@ -206,7 +200,7 @@
     nil ]
   "vt100 C0 character set, nil means character is not used")
 
-(defvar nterm-vt100-special-char
+(defvar nterm-vt100-g0-special
   (vconcat nterm-vt100-c0
            [ ?\s ; Blank
              ?♦ ; Diamond
...
 

nterm check in macro before I break it

File modified: lisp/ivan/nterm.el

Change75 at Wed Oct 07 14:03:23 2009 +0200 by ivan@zen

diff -r f5fc337eede8 -r 3d11e3e5537d lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Wed Oct 07 07:54:48 2009 +0200
+++ b/lisp/ivan/nterm.el	Wed Oct 07 14:03:23 2009 +0200
@@ -18,6 +18,18 @@
   (defvar nterm-collect)
   (defvar nterm-face))
 
+;; Macro to create a dispatch table
+(defmacro nterm-defdispatch (name length default handle comment)
+  `(progn (defvar ,name nil ,comment)
+          (setq ,name
+                (let ((primary-list (make-vector ,length (quote ,default)))
+                      (handle-list (quote ,handle)))
+                  (while handle-list
+                    (aset primary-list (car handle-list)
+                          (cadr handle-list))
+                    (setq handle-list (cddr handle-list)))
+                  primary-list)) ,comment))
+
 (defvar nterm-default-foreground "white"
   "Default terminal foreground.")
 
@@ -98,9 +110,157 @@
 (defvar nterm-memory nil
   "The memory of the terminal, not for customization")
 
+;; From http://www.inwap.com/pdp10/ansicode.txt
+(defvar nterm-ansi-mode
+  (vector (make-bool-vector 20 nil)
+          "GATM" ;  1 Guarded Area Transmit Mode, send all (VT132)
+          "KAM"  ;  2 Keyboard Action Mode, disable keyboard input
+          "CRM"  ;  3 Control Representation Mode, show all control chars
+          "IRM"  ;  4 Insertion/Replacement Mode, set insert mode (VT102)
+          "SRTM" ;  5 Status Report Transfer Mode, report after DCS
+          "ERM"  ;  6 ERasure Mode, erase protected and unprotected
+          "VEM"  ;  7 Vertical Editing Mode, IL/DL affect previous lines
+          nil    ;  8 reserved
+          nil    ;  9 reserved
+          "HEM"  ;  10 Horizontal Editing mode, ICH/DCH/IRM go backwards
+          "PUM"  ;  11 Positioning Unit Mode, use decipoints for HVP/etc
+          "SRM"  ;  12 Send Receive Mode, transmit without local echo
...
 

make excerpt face normal

File modified: lisp/emacs.d/ivan-face.el

Change74 at Wed Oct 07 07:54:48 2009 +0200 by ivan@zen

diff -r 776325174e37 -r f5fc337eede8 lisp/emacs.d/ivan-face.el
--- a/lisp/emacs.d/ivan-face.el	Tue Oct 06 17:26:27 2009 +0200
+++ b/lisp/emacs.d/ivan-face.el	Wed Oct 07 07:54:48 2009 +0200
@@ -99,6 +99,7 @@
  eshell-ls-symlink-face purple
  eshell-ls-unreadable-face normal
  eshell-prompt-face normal
+ excerpt normal
  highlight r-darkseagreen2
  hyper-apropos-documentation yellow
  hyper-apropos-heading normal


 

merge

File modified:

Change73 at Tue Oct 06 17:26:27 2009 +0200 by ivan@tao

diff -r 1d1dea08606a -r 776325174e37 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Oct 06 17:25:20 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 06 17:26:27 2009 +0200
@@ -996,7 +996,7 @@
 
 (defun nterm-send-string (string)
   "Send STRING to host."
-  (process-send-string nterm-process char))
+  (process-send-string nterm-process string))
 
 (defun nterm-key-cr ()
   "Handle pressing carriage return key."
@@ -1012,16 +1012,16 @@
 ;;; TBD fix a bit more nterm-scroll down
 (defun nterm-scroll-up (&optional attribute)
   "Scroll screen up"
-  (save-excursion
+  (let ((scroll-pos (nterm-cur-pos-0)))
     (goto-char (point-min))
     (kill-line 1)
     (goto-char (point-max))
     (insert "\n")
     ;; scroll memory
     (setq nterm-memory (cdr nterm-memory))
-    (setq nterm-memory
-          (append nterm-memory (list (make-vector nterm-width attribute))))
-    (nterm-blank-line ?\s (- nterm-height 1))))
+    (setq nterm-memory (append nterm-memory (list (nterm-mem-line ?\s))))
+    (nterm-blank-line ?\s (- nterm-height 1))
+    (nterm-cur-set-0 scroll-pos)))
 
 (defun nterm-scroll-down ()
   "Scroll screen down"
@@ -1239,44 +1239,44 @@
 
 (defun nterm-vt100-sgr (char)
   "SGR -- Select Graphic Rendition - host to vt100"
-  (let ((list (nterm-bracket-to-list 1))
-        number)
-    (while list
-      (setq number (car list))
...
 

nterm fix scroll up

File modified: lisp/ivan/nterm.el

Change72 at Tue Oct 06 10:59:27 2009 +0200 by ivan@zen

diff -r ff5483009aea -r 3508af72c892 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Tue Oct 06 10:39:40 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 06 10:59:27 2009 +0200
@@ -1012,16 +1012,16 @@
 ;;; TBD fix a bit more nterm-scroll down
 (defun nterm-scroll-up (&optional attribute)
   "Scroll screen up"
-  (save-excursion
+  (let ((scroll-pos (nterm-cur-pos-0)))
     (goto-char (point-min))
     (kill-line 1)
     (goto-char (point-max))
     (insert "\n")
     ;; scroll memory
     (setq nterm-memory (cdr nterm-memory))
-    (setq nterm-memory
-          (append nterm-memory (list (make-vector nterm-width attribute))))
-    (nterm-blank-line ?\s (- nterm-height 1))))
+    (setq nterm-memory (append nterm-memory (list (nterm-mem-line ?\s))))
+    (nterm-blank-line ?\s (- nterm-height 1))
+    (nterm-cur-set-0 scroll-pos)))
 
 (defun nterm-scroll-down ()
   "Scroll screen down"


 

w3m and w3m-emacs update

Add info documentation for w3m-emacs Add a Makefile for the home directory to clean ~/.w3m directory Put w3m-emacs generated file in the portable directory

File modified: info/Makefile info/dir info/emacs-w3m.texi lisp/emacs.d/ivan-w3m.el

Change71 at Tue Oct 06 10:39:40 2009 +0200 by ivan@zen

diff -r b38903fde9f9 -r ff5483009aea lisp/emacs.d/ivan-w3m.el
--- a/lisp/emacs.d/ivan-w3m.el	Tue Oct 06 07:59:13 2009 +0200
+++ b/lisp/emacs.d/ivan-w3m.el	Tue Oct 06 10:39:40 2009 +0200
@@ -1,11 +1,10 @@
 ;;; ivan-w3m.el --- browsing the web with external process
 
-(require 'ivan-face)
-(require 'ivan-keymap)
-(require 'ivan-fun)
-
 (eval-when-compile
-  (require 'ivan-load)
+  (require 'ivan-face)
+  (require 'ivan-fun)
+  (require 'ivan-keymap)
+  (require 'ivan-var)
   (require 'browse-url)
   (require 'wget)
   (require 'w3m)
@@ -97,6 +96,7 @@
    (w3m-view-this-url . ivan-w3m-safe-view-this-url)
    (w3m-mouse-view-this-url . w3m-mouse-safe-view-this-url)
    (w3m-print-this-url))
+ w3m-profile-directory (concat ivan-var-portable-dir ".emacs-w3m")
  w3m-search-engine-alist
  '(("google" "http://www.google.com/search?q=%s&num=100")
    ("google-map" "http://maps.google.com/maps?&q=%s")))


 

nterm fix compile warnings and errors

File modified: lisp/ivan/nterm.el

Change70 at Tue Oct 06 07:59:13 2009 +0200 by ivan@zen

diff -r 164068aaee3a -r b38903fde9f9 lisp/ivan/nterm.el
--- a/lisp/ivan/nterm.el	Mon Oct 05 19:56:29 2009 +0200
+++ b/lisp/ivan/nterm.el	Tue Oct 06 07:59:13 2009 +0200
@@ -996,7 +996,7 @@
 
 (defun nterm-send-string (string)
   "Send STRING to host."
-  (process-send-string nterm-process char))
+  (process-send-string nterm-process string))
 
 (defun nterm-key-cr ()
   "Handle pressing carriage return key."
@@ -1239,44 +1239,44 @@
 
 (defun nterm-vt100-sgr (char)
   "SGR -- Select Graphic Rendition - host to v