[Geany-Users] Determining Geany's user space configuration directory under Windows XP and later

Codger wolfmanjacques at xxxxx
Sun Mar 17 21:26:24 UTC 2013


According to the Geany manual:

The system path is the data subfolder of the installation path on Windows.

The user configuration directory might vary, but on Windows XP it's:
C:\Documents and Settings\UserName\Application Data\geany


A Euphoria Programmer provided this information while commenting on program
I wrote which
installs versions of several files which enable Geany to support the
Euphoria Programming Language:


Some updated info for Windows installs:
>


> In my version of Windows, the actual path to the directory created by
> geany is
> C:\Users\Owner\AppData\Roaming\geany
> *That path doesn't exist until geany is run once. You should tell users
> to run geany once so it can write those default files/dirs.* This way you
> can confirm that whatever path they provide for installing these forms is
> correct.
>


> The path to geany config files needs to be gotten from getenv("APPDATA"),
> instead of getenv("HOME").
> APPDATA can be used from Windows XP on up. On my Windows XP box, it returns
> C:\Documents and Settings\user\Application Data
> On Windows 7 it returns
> C:\The system path is the data subfolder of the installation path on
> Windows.
> The user configuration directory might vary, but on Windows XP it's:
> C:\Documents and Settings\UserName\Application
> Data\geanyUsers\Owner\AppData\Roaming\geany
> The Windows file path code need only be this:
> constant GEANY_DIR = getenv( "APPDATA" ) & SLASH & "geany"

This is my latest installation program, written in Euphoria.  The code is
simple and intuitive, so
I think most programmers will be able to follow it without any problems:

------  EuGeany 1.3b--  --  usage eui EuGeany.ex----  Installs Geany
configuration files which--  provide support for the Euphoria
Programming Language--  Existing files are backed up with an extension
suffix--  which may be defined by the user--

--    For more information read comments in the respective files,

--  especially, filetypes.Euphoria.conf.----
include std/console.einclude std/filesys.einclude std/graphics.e
constant BACKUP_SUFFIX = "~"-- constant BACKUP_SUFFIX = ".BAK"
sequence GEANY_USER_CONFIG = getenv( "HOME") & SLASH & ".config" &
SLASH & "geany"
ifdef WINDOWS then	GEANY_USER_CONFIG =  getenv( "APPDATA" ) & SLASH &
"geany"end ifdef
-- create tags directory, if it does not already exist:if
create_directory( GEANY_USER_CONFIG & SLASH & "tags" ) then end if
constant SCREEN = 1constant DIR = 1constant FILE = 2sequence data = {
     -- DIR = [1]                        -- FILE = [2]			{ SLASH &
"filedefs" & SLASH , "filetypes.Euphoria.conf"},			{ SLASH & "tags"
 & SLASH , "std.euphoria-4.1.e.tags" },			{ SLASH
, "filetype_extensions.conf" },			{ SLASH                      ,
"snippets.conf"}		    }
constant OVERWRITE_EXISTING_FILE = 1sequence destinationsequence pwd =
current_dir() & SLASHbk_color(BLACK)for i=1 to length( data ) do
    destination = GEANY_USER_CONFIG & data[i][DIR] & data[i][FILE]
        -- BACKUP OLD FILES	text_color(BRIGHT_BLUE)	display( "\n---- "
& destination )	if file_exists( destination ) then
	    	    -- make a back up copy	    text_color(YELLOW)	    for x = 1
to length(GEANY_USER_CONFIG & data[i][DIR]) -11  do		puts(SCREEN, "
")	    end for	    display( " backing up ... ", 0 )
	    	    if copy_file(destination,destination &
BACKUP_SUFFIX,OVERWRITE_EXISTING_FILE) then 		    -- do nothing	
else		text_color(BRIGHT_RED)		display( " !!! backup failed" )	    end
if
		else
	    	    -- file does not exist, no need to back up	
text_color(YELLOW)	    display( "no backup file necessary ... ", 0 )
		end if
	    -- UPDATE FILES	if copy_file( pwd & data[i][FILE], destination,
OVERWRITE_EXISTING_FILE) then
	    	    -- file is successfully updated	    text_color(BROWN)	
display( data[i][FILE], 0)	    text_color(BRIGHT_CYAN)	    display ( "
UPDATED!")
		else	    -- update failed	    text_color(BRIGHT_RED)	    display( "
!!!  update failed")
		end ifend for

Regards,

-- 
Kenneth Rhodes
Ubuntu 12.1
100% MicroSoft Free!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.geany.org/pipermail/users/attachments/20130317/9aaa7e3e/attachment-0001.html>


More information about the Users mailing list