Skip to Content.
Sympa Menu

emacspeak - Re: [Emacspeak] Trying to install emacspeak on fedora 44

Subject: Emacspeak discussion list

List archive

Re: [Emacspeak] Trying to install emacspeak on fedora 44


Chronological Thread 
  • From: Devin Prater <r.d.t.prater AT gmail.com>
  • To: Tim Cross <theophilusx AT gmail.com>
  • Cc: Jon Pielaet <jon AT pielaet.net>, Greg Wocher <gtwocher AT gmail.com>, emacspeak AT emacspeak.net
  • Subject: Re: [Emacspeak] Trying to install emacspeak on fedora 44
  • Date: Fri, 23 Oct 2026 08:31:48 -0500
  • Arc-authentication-results: i=1; mx.google.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=/bqOjdVJSH0OkB5sC8Xmj3rKmikG1QLZ3RBlJx/5JRk=; fh=EkfJWlow1KdvVAH4U55eVSuizdsiAf8fKeO4g9GCrCA=; b=VjqIEK43b3GzmylJllGkJqLt0NfgwKU1q1Fh/4LVFvhmBMpSrW4U3v3g5N4Lfax5KA +tW1pOK83Lh1GINSoqSwTqktALkxLtV0d8KMS+fblvWUCD2H5BojXik6J/kFgjfcNtT7 RdIFlFFRynUEtsDKr5QTSvesdNxOVLQvMQeMBDHyap1HtlX9f3iBjleJygpmUwkwOSbA v9YO4EmWzTiKsNv0L5nRsnFPKc7cuVEGzLk5xWiQNjIhBQPhLYRBBLP40K7I0rROMDAB lSWlzJxancu33LnBk9FCBSdkri4AW3UILa378Xit/0RUphJPdB+sRkAQplKv3eeUD0pz IMbA==; darn=emacspeak.net
  • Arc-seal: i=1; a=rsa-sha256; t=1792762320; cv=none; d=google.com; s=arc-20260327; b=nff8PFHOH6s4z2xu1tocbLDPax+fnzf9vOyKPLHQRJaeSs6obPR6WGbhieb22CH8jY mHRGiAbAcpTDR/OHS7EKqEK5dR/gI/7ScjFOScx8PnRCx2tS9xsohdYc2y5x/WQE3kLC Xtsa0kGvWDolphT93LpyqHxpyj+Y65ej8AZ0hVhT6DHmV/8DoA2Y6M4vyz3pbFF1s2nO 5coyMaDgs8dcHMpL08WTMvyLsrNF63lvTXgdF4dLhk/HNq4Kl1jQowrGL97u6yAlU7ew lFzmV6ZeKR1QjwGJLh1gvRo2E25QKB6UHX2A3wm1m7zgk93jaJhJxCsllIRVHrs3JW2Q /ZIA==

You may be right. It has been a while since I updated to Fedora 44.


On Thu, Oct 22, 2026 at 7:30 PM Tim Cross <theophilusx AT gmail.com> wrote:
"Devin Prater" (via emacspeak Mailing List) <emacspeak AT emacspeak.net> writes:


Actually, I'm not sure that information is correct. I'm running on
Fedora 44 and dnf shows there is a tclx package. However, I did have to
change the shell shebang to

#!/usr/bin/tclsh8

I have the following tcl related packages installed from dnf

tcl.x86_64        1:9.0.2-1.fc44 
tcl8.x86_64       1:8.6.17-2.fc44
tcl8-devel.x86_64 1:8.6.17-2.fc44
tclx.x86_64       8.4.0-52.fc44   

The most common cause of errors when it comes to building the speech
servers are minor naming inconsistencies across linux distributions or
operating systems. For example, tclsh8 for the tcl shell name instead of
just tclsh or slight differences in shared library names. The ldd
command can help identify missing shared libs, as can using tools like
find ro the fd utility.

> Oh, Fedora 44 doesn't have TCLX from what I recall. I just had AI fix up the speech servers by polyfilling what the servers needed in
> pure TCL.
> Devin Prater
> r.d.t.prater AT gmail.com
>
> On Wed, Oct 21, 2026 at 9:02 PM Jon Pielaet <emacspeak AT emacspeak.net> wrote:
>
>  Hi Greg,
>
>  I suspect that Fedora's default tcl package is Tcl 9, and emacspeak's speech servers and their espeak glue only work with Tcl 8.6.
>
>  Fedora still ships Tcl 8.6 as tcl8, with tcl8-devel and a TclX built for it.
>
>  Here is an example script of how I would install them and emacspeak on Fedora 44:
>
>  https://github.com/leavesofgrass/emacspeak-docker/blob/main/scripts/install-emacspeak-fedora.sh
>
>  I hope this helps.
>
>  Best,
>
>  Jon
>
>  On Wed, Oct 21, 2026 at 5:21 AM Greg Wocher <emacspeak AT emacspeak.net> wrote:
>
>  Hello all,
>  I am trying to install emacspeak on fedora 44. I am using the mate spin of fedora. When I try and make espeak I get a very
>  long error and it wont make. Here is the error I get:
>  g++ -g    -O2 -fPIC  -DPIC  -pedantic -ansi -Wall -Wno-long-long --std=c++11 -I/usr/include/tcl8.6   -c -o tclespeak.o
>  tclespeak.cpp
>  tclespeak.cpp: In function ‘int Tclespeak_Init(Tcl_Interp*)’:
>  tclespeak.cpp:105:43: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    105 |   Tcl_CreateObjCommand(interp, "setRate", SetRate, (ClientData)handle,
>        |                                           ^     
>        |                                           |
>        |                                           int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  In file included from /usr/include/tcl.h:2438,
>                   from tclespeak.cpp:47:
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:107:43: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    107 |   Tcl_CreateObjCommand(interp, "getRate", GetRate, (ClientData)handle,
>        |                                           ^     
>        |                                           |
>        |                                           int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:109:46: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    109 |   Tcl_CreateObjCommand(interp, "ttsVersion", getTTSVersion, (ClientData)handle,
>        |                                              ^           
>        |                                              |
>        |                                              int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:111:47: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    111 |   Tcl_CreateObjCommand(interp, "ttsDataPath", getTTSDataPath,
>        |  ^             
>        |                                               |
>        |                                               int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:113:41: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    113 |   Tcl_CreateObjCommand(interp, "punct", Punct, (ClientData)handle, NULL);
>        |                                         ^   
>        |                                         |
>        |                                         int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:114:39: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    114 |   Tcl_CreateObjCommand(interp, "say", Say, (ClientData)handle, TclEspeakFree);
>        |                                       ^ 
>        |                                       |
>        |                                       int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:115:41: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    115 |   Tcl_CreateObjCommand(interp, "synth", Say, (ClientData)handle, NULL);
>        |                                         ^ 
>        |                                         |
>        |                                         int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:116:47: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    116 |   Tcl_CreateObjCommand(interp, "synchronize", Synchronize, (ClientData)handle,
>        |                                               ^         
>        |                                               |
>        |                                               int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:118:40: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    118 |   Tcl_CreateObjCommand(interp, "stop", Stop, (ClientData)handle, TclEspeakFree);
>        |                                        ^   
>        |                                        |
>        |                                        int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:119:45: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    119 |   Tcl_CreateObjCommand(interp, "speakingP", SpeakingP, (ClientData)handle,
>        |                                             ^       
>        |                                             |
>        |                                             int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:121:41: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    121 |   Tcl_CreateObjCommand(interp, "pause", Pause, (ClientData)handle,
>        |                                         ^   
>        |                                         |
>        |                                         int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:123:42: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    123 |   Tcl_CreateObjCommand(interp, "resume", Resume, (ClientData)handle,
>        |                                          ^     
>        |                                          |
>        |                                          int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp:125:47: error: invalid conversion from ‘int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**)’ {aka ‘int (*)(void*,
>  Tcl_Interp*, int, Tcl_Obj**)’} to ‘int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*)’ [-fpermissive]
>    125 |   Tcl_CreateObjCommand(interp, "setLanguage", SetLanguage, (ClientData)handle,
>        |                                               ^         
>        |                                               |
>        |                                               int (*)(ClientData, Tcl_Interp*, int, Tcl_Obj**) {aka int (*)(void*, Tcl_Interp*, int, Tcl_Obj**)}
>  /usr/include/tclDecls.h:299:70: note: initializing argument 3 of ‘Tcl_Command_* Tcl_CreateObjCommand(Tcl_Interp*, const
>  char*, int (*)(void*, Tcl_Interp*, int, Tcl_Obj* const*), void*, void (*)(void*))’
>    299 |                              const char *cmdName, Tcl_ObjCmdProc *proc,
>        |                  ^   
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:133:28: error: expected ‘,’ or ‘...’ before ‘objv’
>    133 |             Tcl_Obj *CONST objv[]) {
>        |                            ^   
>  tclespeak.cpp: In function ‘int GetRate(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:139:34: error: ‘objv’ was not declared in this scope; did you mean ‘objc’?
>    139 |   rc = Tcl_GetIntFromObj(interp, objv[1], &voice);
>        |                                  ^   
>        |                                  objc
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:150:28: error: expected ‘,’ or ‘...’ before ‘objv’
>    150 |             Tcl_Obj *CONST objv[]) {
>        |                            ^   
>  tclespeak.cpp: In function ‘int SetRate(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:159:34: error: ‘objv’ was not declared in this scope; did you mean ‘objc’?
>    159 |   rc = Tcl_GetIntFromObj(interp, objv[1], &voice);
>        |                                  ^   
>        |                                  objc
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:241:24: error: expected ‘,’ or ‘...’ before ‘objv’
>    241 |         Tcl_Obj *CONST objv[]) {
>        |                        ^   
>  tclespeak.cpp: In function ‘int Say(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:244:49: error: ‘objv’ was not declared in this scope; did you mean ‘objc’?
>    244 |     char *a_text = (char *)Tcl_GetStringFromObj(objv[i], NULL);
>        |                                                 ^   
>        |                                                 objc
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:269:32: error: expected ‘,’ or ‘...’ before ‘objv’
>    269 |                 Tcl_Obj *CONST objv[]) {
>        |                                ^   
>  tclespeak.cpp:276:25: error: expected ‘,’ or ‘...’ before ‘objv’
>    276 |          Tcl_Obj *CONST objv[]) {
>        |                         ^   
>  tclespeak.cpp:284:30: error: expected ‘,’ or ‘...’ before ‘objv’
>    284 |               Tcl_Obj *CONST objv[]) {
>        |                              ^   
>  tclespeak.cpp:294:26: error: expected ‘,’ or ‘...’ before ‘objv’
>    294 |           Tcl_Obj *CONST objv[]) {
>        |                          ^   
>  tclespeak.cpp:300:27: error: expected ‘,’ or ‘...’ before ‘objv’
>    300 |            Tcl_Obj *CONST objv[]) {
>        |                           ^   
>  tclespeak.cpp:309:30: error: expected ‘,’ or ‘...’ before ‘objv’
>    309 |               Tcl_Obj *CONST objv[]) {
>        |                              ^   
>  tclespeak.cpp:317:26: error: expected ‘,’ or ‘...’ before ‘objv’
>    317 |           Tcl_Obj *CONST objv[]) {
>        |                          ^   
>  tclespeak.cpp: In function ‘int Punct(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:318:47: error: ‘objv’ was not declared in this scope; did you mean ‘objc’?
>    318 |   char *a_mode = (char *)Tcl_GetStringFromObj(objv[1], NULL);
>        |                                               ^   
>        |                                               objc
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:343:34: error: expected ‘,’ or ‘...’ before ‘objv’
>    343 |                   Tcl_Obj *CONST objv[]) {
>        |                                  ^   
>  tclespeak.cpp:359:35: error: expected ‘,’ or ‘...’ before ‘objv’
>    359 |                    Tcl_Obj *CONST objv[]) {
>        |                                   ^   
>  tclespeak.cpp: In function ‘int getTTSDataPath(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:370:29: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
>    370 |   char *pathCopy = Tcl_Alloc(pathLen);
>        |                             ^       
>        |                             |
>        |                             void*
>  tclespeak.cpp: At global scope:
>  tclespeak.cpp:404:32: error: expected ‘,’ or ‘...’ before ‘objv’
>    404 |                 Tcl_Obj *CONST objv[]) {
>        |                                ^   
>  tclespeak.cpp: In function ‘int SetLanguage(ClientData, Tcl_Interp*, int, Tcl_Obj*)’:
>  tclespeak.cpp:407:43: error: ‘objv’ was not declared in this scope; did you mean ‘objc’?
>    407 |     const char *voiceName = Tcl_GetString(objv[2]);
>        |                                           ^   
>  make: *** [<builtin>: tclespeak.o] Error 1
>  greg@fedora: /emacspeak/servers/native-espeak$
>  I am not sure what to do here. Anyone have any suggestions?
>
>  Thanks,
>  Greg Wocher
>
>  Emacspeak discussion list -- emacspeak AT emacspeak.net
>  To unsubscribe send email to:
>  emacspeak-request AT emacspeak.net with a subject of: unsubscribe
>
>  Emacspeak discussion list -- emacspeak AT emacspeak.net
>  To unsubscribe send email to:
>  emacspeak-request AT emacspeak.net with a subject of: unsubscribe
>
> Emacspeak discussion list -- emacspeak AT emacspeak.net
> To unsubscribe send email to:
> emacspeak-request AT emacspeak.net with a subject of: unsubscribe



Archive powered by MHonArc 2.6.19+.

Top of Page