Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
lyskom-elisp-client
lyskom-elisp-client
Commits
9a08c440
Commit
9a08c440
authored
Sep 14, 2002
by
David Byers
Browse files
Fixade bug 752
parent
cf12a278
Changes
5
Hide whitespace changes
Inline
Side-by-side
src/ChangeLog
View file @
9a08c440
2002-09-14 David Byers <david.byers@swipnet.se>
Fix bug 752:
* commands1.el (kom-list-re): Use lyskom-a-or-b-or-c-p to choose
what to search in.
* lyskom-rest.el (lyskom-a-or-b-or-c-p): New function. Generalized
y-or-n-p sort of.
2002-09-12 David Byers <david.byers@swipnet.se>
* english-strings.el,swedish-strings.el: Fixed speling error for
...
...
src/commands1.el
View file @
9a08c440
...
...
@@ -1863,13 +1863,16 @@ If it is 'conf, only conferences will be listed."
(
interactive
(
list
(
lyskom-read-string
(
lyskom-get-string
'search-re
))
current-prefix-arg
(
let
((
pers
(
lyskom-j-or-n-p
'include-persons
))
(
conf
(
lyskom-j-or-n-p
'include-conferences
)))
(
cond
((
and
pers
conf
)
nil
)
(
pers
'pers
)
(
conf
'conf
)
(
t
(
error
"This user interface is stupid."
))))))
(
let
((
sel
(
lyskom-a-or-b-or-c-p
'search-re-for-what
'
(
search-re-confs
search-re-persons
search-re-all
)
'search-re-all
)))
(
cond
((
eq
sel
'search-re-all
)
nil
)
((
eq
sel
'search-re-persons
)
'pers
)
((
eq
sel
'search-re-confs
)
'conf
)
(
t
nil
)))))
(
unless
case-sensitive
(
setq
regexp
(
lyskom-make-re-case-insensitive
regexp
)))
(
lyskom-format-insert
(
cond
...
...
src/english-strings.el
View file @
9a08c440
...
...
@@ -379,8 +379,10 @@ and you have finished reading. Please come back later.
(search-for-pers . "
Enter
search
key
(
RETURN
for
all
users
)
:
")
(search-for-conf . "
Enter
search
key
(
RETURN
for
all
conferences
)
:
")
(search-re . "
Enter
search
regexp:
")
(include-persons . "
Search
among
persons?
")
(include-conferences . "
Search
among
conferences?
")
(search-re-for-what . "
What
do
you
want
to
search
for?
")
(search-re-persons . "
ppersons
")
(search-re-confs . "
cconferences
")
(search-re-all . "
bboth
")
(no-matching-confs . "
No
conferences
match
\"%#1s\".\n
")
(no-matching-perss . "
No
persons
match
\"%#1s\".\n
")
...
...
@@ -1194,6 +1196,8 @@ You should set it to a better value.\n")
(j-or-n . "
(
y
or
n
)
")
(y-instring . "
yY
")
(a-or-b-or-c-nag . "
Pleas
press
a
valid
key.
")
(person-does-not-exist . "
User
%#1d
(
does
not
exist
)
.
")
(conference-does-not-exist . "
Conference
%#1d
(
does
not
exist
)
.
")
(conf-no-does-not-exist-r . "
Conference
%#1d
does
not
exist.
")
...
...
src/lyskom-rest.el
View file @
9a08c440
...
...
@@ -3520,6 +3520,80 @@ lyskom-get-string to retrieve regexps for answer and string for repeated query."
(ja-or-nej-p prompt initial-input)
(quit (signal 'quit nil))))
(defun lyskom-a-or-b-or-c-p (prompt alternatives &optional default)
"Like y-or-n-p but choose among several options.
Display PROMPT and ask user to choose among ALTERNATIVES.
ALTERNATIVES are symbols. Each alternative must be found as a string
in lyskom-messages. The first character of the string is the character
to enter to select the alternative and is not displayed.
If non-nil DEFAULT is the default alternative and is selected when the
user types RET.
Returns the selected alternative (a symbol)"
(when (symbolp prompt) (setq prompt (lyskom-get-string prompt)))
(let* ((input-char 0)
(cursor-in-echo-area t)
(lyskom-inhibit-minibuffer-messages t)
(alts (mapcar (lambda (alt)
(let ((string (lyskom-get-string alt)))
(list (elt string 0)
(substring string 1)
alt)))
alternatives))
(alts-string (format "(%s) " (mapconcat (lambda (c)
(format "%c: %s"
(elt c 0)
(elt c 1)))
alts
", ")))
(nagging nil))
(while (and (not (assq input-char alts))
(not (or (eq input-char ?\C-g)
(eq 'keyboard-quit
(lyskom-lookup-key (current-local-map)
input-char
t))))
(not (and default (eq input-char ?\C-m))))
(lyskom-message "%s" (concat (if nagging
(lyskom-get-string 'a-or-b-or-c-nag)
"")
prompt
alts-string))
(if nagging (beep))
;;
;; Workaround for Emacs whose read-char does not accept C-g
;;
(setq input-char
(let ((inhibit-quit t))
(prog1 (read-char-exclusive)
(setq quit-flag nil))))
;;
;; Redisplay prompt on C-l
;;
(if (or (eq input-char ?\C-l)
(eq 'recenter (lyskom-lookup-key (current-local-map)
input-char
t)))
(setq nagging nil)
(setq nagging t)))
(when (or (eq input-char ?\C-g)
(eq 'keyboard-quit (lyskom-lookup-key (current-local-map)
input-char
t)))
(signal 'quit nil))
(lyskom-message "%s" (concat prompt (elt (assq input-char alts) 1)))
(if (eq input-char ?\C-m)
default
(elt (assq input-char alts) 2))))
(defun lyskom-membership-< (a b)
...
...
src/swedish-strings.el
View file @
9a08c440
...
...
@@ -349,8 +349,10 @@ du har l
(search-for-pers . "
Ange
skvillkor
(
RETURN
fr
alla
personer
)
:
")
(search-for-conf . "
Ange
skvillkor
(
RETURN
fr
alla
mten
)
:
")
(search-re . "
Ange
skuttryck
(
reguljrt
uttryck
)
:
")
(include-persons . "
Sk
bland
personer?
")
(include-conferences . "
Sk
bland
mten?
")
(search-re-for-what . "
Vad
vill
du
ska?
")
(search-re-persons . "
pSk
personer
")
(search-re-confs . "
mSk
mten
")
(search-re-all . "
bSk
alla
")
(no-matching-confs . "
Inga
mten
uppfyller
skvillkoret
\"%#1s\".\n
")
(no-matching-perss . "
Inga
personer
uppfyller
skvillkoret
\"%#1s\".\n
")
...
...
@@ -1208,6 +1210,8 @@ Du b
(j-or-n . "
(
j
eller
n
)
")
(y-instring . "
jJ
")
(a-or-b-or-c-nag . "
Ge
ett
giltigt
alternativ.
")
(person-does-not-exist . "
Person
%#1d
(
finns
inte
)
.
")
(conference-does-not-exist . "
Mte
%#1d
(
finns
inte
)
.
")
(conf-no-does-not-exist-r . "
Mte
%#1d
finns
inte.
")
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment