Eskil

Check-in [f67e07fd0a]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:When needing an editor, try VISUAL and EDITOR plus a set of common ones.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: f67e07fd0ad804fdbda4b35efcc056c2c19e5a21
User & Date: peter 2017-03-17 23:39:21.116
Context
2017-03-31
12:55
Variable size on commit window check-in: d544944776 user: peter tags: trunk
2017-03-17
23:39
When needing an editor, try VISUAL and EDITOR plus a set of common ones. check-in: f67e07fd0a user: peter tags: trunk
00:04
Better locating of editor check-in: 51b6d9a9be user: peter tags: trunk
Changes
Unified Diff Ignore Whitespace Patch
Changes to Changes.



1
2
3
4
5
6
7



2017-02-05
 Bumped revision to 2.7.4
 Handle multiple preprocess definitions that can be saved with preferences.

2017-02-04
 Support more areas for file drop.

>
>
>







1
2
3
4
5
6
7
8
9
10
2017-03-18
 When needing an editor, try VISUAL and EDITOR plus a set of common ones.

2017-02-05
 Bumped revision to 2.7.4
 Handle multiple preprocess definitions that can be saved with preferences.

2017-02-04
 Support more areas for file drop.

Changes to eskil.vfs/lib/pstools/pstools.tcl.
128
129
130
131
132
133
134



135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# already exists.
proc pstools::locateEditor {globVar} {
    upvar "#0" $globVar var

    if {[info exists var]} return

    set candidates {}



    if {[info exists ::env(EDITOR)]} {
        lappend candidates $::env(EDITOR)
    }
    if {[info exists ::env(VISUAL)]} {
        lappend candidates $::env(VISUAL)
    }
    if {$::tcl_platform(platform) == "windows"} {
        # Try to locate some common installation points for Emacs
        set dirs [glob -nocomplain c:/apps/emacs*]
        lappend dirs {*}[glob -nocomplain "C:/Program Files/emacs*"]
        foreach dir [lsort -decreasing -dictionary $dirs] {
            set em [file join $dir bin runemacs.exe]
            set em [file normalize $em]
            if {[file exists $em]} {
                lappend candidates $em
                break
            }
        }
        lappend candidates runemacs wordpad
    }
    # What is a good value on Mac?

    # Add some more for fallback
    lappend candidates emacs gedit kate vim

    foreach cand $candidates {
        if {[auto_execok $cand] ne ""} {
            set var $cand
            return
        }
    }
    # If we fall through here we are kind of lost...
    set var "could_not_find_editor"
}







>
>
>



<
<
<

















|



|






128
129
130
131
132
133
134
135
136
137
138
139
140



141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
# already exists.
proc pstools::locateEditor {globVar} {
    upvar "#0" $globVar var

    if {[info exists var]} return

    set candidates {}
    if {[info exists ::env(VISUAL)]} {
        lappend candidates $::env(VISUAL)
    }
    if {[info exists ::env(EDITOR)]} {
        lappend candidates $::env(EDITOR)
    }



    if {$::tcl_platform(platform) == "windows"} {
        # Try to locate some common installation points for Emacs
        set dirs [glob -nocomplain c:/apps/emacs*]
        lappend dirs {*}[glob -nocomplain "C:/Program Files/emacs*"]
        foreach dir [lsort -decreasing -dictionary $dirs] {
            set em [file join $dir bin runemacs.exe]
            set em [file normalize $em]
            if {[file exists $em]} {
                lappend candidates $em
                break
            }
        }
        lappend candidates runemacs wordpad
    }
    # What is a good value on Mac?

    # Add some more for fallback
    lappend candidates emacs gvim gedit kate

    foreach cand $candidates {
        if {[auto_execok $cand] ne ""} {
            set var [list $cand]
            return
        }
    }
    # If we fall through here we are kind of lost...
    set var "could_not_find_editor"
}
Changes to src/dirdiff.tcl.
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275

    return [Fsort $files2]
}

# Bring up an editor to display a file.
proc EditFile {file} {
    locateEditor ::util(editor)
    exec $::util(editor) $file &
}

# Pick a directory for compare
proc BrowseDir {dirVar entryW} {
    upvar "#0" $dirVar dir

    set newdir $dir







|







261
262
263
264
265
266
267
268
269
270
271
272
273
274
275

    return [Fsort $files2]
}

# Bring up an editor to display a file.
proc EditFile {file} {
    locateEditor ::util(editor)
    exec {*}$::util(editor) $file &
}

# Pick a directory for compare
proc BrowseDir {dirVar entryW} {
    upvar "#0" $dirVar dir

    set newdir $dir