DmmReg-test.pl
EmbedManifest.pl
ExtUtils01.pl
#AIM: To explore some items in ExtUtils::MakeMaker::Config;
ExtUtils02.pl
# AIM: To Enumerate the keys and values in
GetIPreglocal.pl
IsLeapYear.pl
ObjectVariableTest.pl
Qt2cmake.pl
# AIM: Convert a given Qt project file <project>.pro to a CMakeLists.txt
# 07/09/2012 - Tweak for adding QtScript component
# 08/06/2012 - Even if 'qt' NOT found in CONFIG it IS a Qt project
# 05/06/2012 - ADD INSTALL
# 13/05/2012 - Quieten the beast unless -v[n]
# 10/05/2012 - Tidy up for first release
# 08/05/2012 - First cut
QtPro.pl
# AIM: Read a QT pro (project) file, and check Buttons and Text Edit fields
# have 'connection'...
# 30/11/2011 geoff mclane http://geoffair.net/mperl
Tidy01.pl
# AIM: To test a little, the HTML::Tidy interface ...
Tidy02.pl
# AIM: SPECIFIC TO HTML TIDY ONLY - HTML5 SUPPORT RESEARCH
abs_path.pl
ac3d2threejs-ok.pl
ac3d2threejs.pl
ac3dparse.pl
acscan.pl
acscan02.pl
# AIM: Scan a single configure.ac file
# 31/08/2010 - review, with better understanding of the configure.ac file)
# geoff mclane http://geoffair.net/mperl
acscan03.pl
# AIM: Scan a single configure.ac file
# 15/09/2010 - Changed to use lib_utils, lib_acscan and lib_params
# 05/09/2010 - Finalize... add write amlist.txt
# 04/09/2010 - Gut and use the new lib_acscan.pl for the reading...
# 31/08/2010 - review, with better understanding of the configure.ac file)
# geoff mclane http://geoffair.net/mperl
addheader.pl
# AIM: To insert a block of text into the head of a C/C++ file
# geoff mclane - http://geoffmclane.com/mperl/index.htm
#
addjsnav.pl
# AIM: QUITE SPECIALIZED! Seek all HTML in folder given, and add a nav.js script,
# and insert a printList() js in 'docs' div...
addrbook.pl
# AIM: To decode a BINARY compuserve addrbook,dat file,
# and output the email addresses found.
# geoff mclane - october, 2006
# http://geoffmclane.com/mperl/samples
addsrcs.pl
# AIM: Add sources to a *.vcproj file
addtitle.pl
# AIM: Very sepcific - given a HTML file, search for anchors, open anchor HREF file
# and insert the title.
adjcmake.pl
# AIM: Sometimes the cmake_install.cmake has HARD CODED paths - This is to 'adjust'
# those hard coded paths to a new path...
# 18/04/2014 - Show the 'aim' as part of the help output
# 15/01/2014 - Appears to work for ZLIB install to F:\FG\18\TEMPI - remove DEBUG
# 22/05/2013 - Fix to take in a FULL CMake line
adjjs.pl
# AIM: Specialised input a list from Imagemagick 'indentify', load a javascript list, and
# adjust the images size. If identify size is 800x600, put 'N', if 450x600 put 'R',
# else use the geometry given
adjrt01.pl
adjrt02.pl
# AIM: Given a SOLUTION (SLN) file, extract all projects
# Check and report RUNTIME setting - differentiate Debug/Release / static or not
# IFF $write_changes set, rename the file to .BAK, and write new vcproj file,
# else, just REPORT what would be changed if it was ON.
# OTHER USER OPTIONS
# IFF $UseMD is set, will adjust to /MD[d], else /MT[d]
# IFF $FixIgnore is set, will remove any IGNORE libraries
# IFF $FixStatic is set, will ALSO adjust those configuration that contain the word STATIC
# IFF $FixPrep1 is set, will ENSURE _CRT_SECURE_NO_DEPRECATE is in Preprocessor defines
#
# Contents of sample VCPROJ file
# <Configurations>
# <Configuration
# Name="Debug|Win32"
# ...
# ATLMinimizesCRunTimeLibraryUsage="false"
# >
# ...
# <Tool
# Name="VCCLCompilerTool"
# Optimization="0"
# AdditionalIncludeDirectories="..\vc2005;..\zlib;..\png;..\jpeg;.."
# PreprocessorDefinitions="_CRT_SECURE_NO_DEPRECATE;WIN32;_DEBUG;_WINDOWS;WIN32_LEAN_AND_MEAN;VC_EXTRA_LEAN;WIN32_EXTRA_LEAN"
# RuntimeLibrary="3"
# ...
# />
# </Configuration>
# <Configuration
# Name="Release|Win32"
# ...
adjxml.pl
# AIM: specalized - read a javascript text file, with array of image captions, and
# write the caption to a JetPhoto XML file as <info>...</info>
# 06/07/2008 geoff mclane http://geoffair.net/mperl - specialized!
afm2txf.pl
alarm.pl
# AIM: To try alarm function
# BUT NEVER GOT ANYTHING TO WORK WITH alarm !!!
# neither the STDIN test, nor any socket tests
# sockets can be set non-blocking, thus maybe alarm not needed?!!?
# but think alarm SECONDS does NOT function in WIN32
# from : http://experts.about.com/q/Perl-CGI-1045/Alarm-error.htm
# read : But alarm seems to be unsupported function in windows...
# i get the following error msg..
# The Unsupported function alarm function is unimplemented at TIMER3.PL line 3.
# from : http://www.fvwm.org/documentation/perllib/FVWM::Tracker::Scheduler.php?theme=default
# read : Note that alarm signals are not relable in some perl versions, on some systems and with
# some kind of applications, don't expect the alarm method to work at all.
am2dsp.pl
am2dsp1.pl
am2dsp2.pl
am2dsp3.pl
am2dsp4.pl
am2dsp5.pl
am2dsp6.pl
am2dsp7.pl
# AIM: Read Makefile.am set, and generate MSVC6 DSW/DSP files for the project.
# Variable $static_lib controls if app or lib = 1 for SimGear, 0 for FlightGear
# ALSO SEE amsrcs[nn].pl to show the sources, and write temp DSP/DSW file
#
# 21/11/2008 - This will run without a 'config' file, but the results???
# in other attempts at this have used the VCPROJ file to get such values.
# Has BIG problem, in that it COMBINES ALL sources, into ONE, including some
# of the standalone 'test' and 'utitlity' applications.
#
# NOTE: Because of changing/evolving spec for config file, am2dsp?.cfg,
# this version will not run without finding, at least a blank file am2dsp7.cfg
# Also, to simplify the script a little, the writing of the old style DSP,
# with 'folders' to match the source folders has been completely abandoned!
# also abandoned is the effort to read and modify the MSVC8 solutions files.
# geoff mclane - 7 Nov, 2006
# 19/05/2008 - Many changes to try to analyse ANY project, and write DSP/DSW file(s)
#
# FIX20061107 bug fix: like some JSBSim Makefile.am files, others have been found with
# source files listed under 'noinst_HEADERS', this function now only adds
# a file from this tag if it has a 'header' extension - h, hpp, or hxx
# 20070421 - totally remove all MSVC8 stuff
# 21/04/2007 - and do a general tidyup of code
# 04/04/2008 - add log file
# 2006 geoff mclane http://geoffair.net/mperl
# ######################################################################################
am2dsp8.pl
# AIM: Read Makefile.am set, and generate MSVC6 DSW/DSP files for the project.
# 13/09/2010 - Suspended this line of scripts for now. See amsrcs04.pl
# 24/08/2010 - Review of script
# Variable $static_lib controls if app or lib = 1 for SimGear, 0 for FlightGear
# ALSO SEE amsrcs[nn].pl to show the sources, and write temp DSP/DSW file
#
# 21/11/2008 - This will run without a 'config' file, but the results???
# in other attempts at this have used the VCPROJ file to get such values.
# Has BIG problem, in that it COMBINES ALL sources, into ONE, including some
# of the standalone 'test' and 'utitlity' applications.
#
# NOTE: Because of changing/evolving spec for config file, am2dsp?.cfg,
# this version will not run without finding, at least a blank file am2dsp7.cfg
# Also, to simplify the script a little, the writing of the old style DSP,
# with 'folders' to match the source folders has been completely abandoned!
# also abandoned is the effort to read and modify the MSVC8 solutions files.
# geoff mclane - 7 Nov, 2006
# 19/05/2008 - Many changes to try to analyse ANY project, and write DSP/DSW file(s)
#
# FIX20061107 bug fix: like some JSBSim Makefile.am files, others have been found with
# source files listed under 'noinst_HEADERS', this function now only adds
# a file from this tag if it has a 'header' extension - h, hpp, or hxx
# 20070421 - totally remove all MSVC8 stuff
# 21/04/2007 - and do a general tidyup of code
# 04/04/2008 - add log file
# 2006 geoff mclane http://geoffair.net/mperl
# ######################################################################################
am2dspcurr.pl
am2list01.pl
# AIM: Load Makefile.am files from a given folder, and list the source files found ...
# 25/09/2007 - some improvements, and remove MSVC8 stuff
# geoff mclane - http://geoffair.net/mperl
am2list02.pl
# AIM: Load Makefile.am files from a given folder, and list the source files found ...
# 22/09/2010 - Development abandoned for amsrcs04.pl, which does LOTS more
# 24/08/2010 - Reviewed
# 25/09/2007 - some improvements, and remove MSVC8 stuff
# geoff mclane - http://geoffair.net/mperl
amitems.pl
# AIM: Read a Makefile.am files, and hash the contents
amscan.pl
# AIM: Given a single Makefile.am, try to SCAN all in the set
# 05/09/2010 - Some further tidying...
# 31/08/2010 - Review (with new/better understanding of the Makefile.am ;=))
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
# ####################################################
amscan02.pl
# AIM: Given a single Makefile.am, try to SCAN all in the set
# 15/09/2010 - Using only lib_amscan.pl, and lib_params.pl
# 07/09/2010 - Moving towards a lib_amscan.pl
# 05/09/2010 - Some further tidying...
# 31/08/2010 - Review (with new/better understanding of the Makefile.am ;=))
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
# ####################################################
amsrcs01.pl
# AIM: Given a folder, trace the makefile.am files, collecting
# libraries, applications and sources
# Show 'projects' found, and SHOW the sources of each.
# AND write a DSP file for each!!!
# Also see am2dsp[n].pl as well ...
#
# Also scan the 'top' directory for ALL FILE,
# and show files NOT in a project
# Add projects NOT addressed by main configure.ac and makefile.am
# 17/11/2007 - geoff mclane - http://geoffair.net/mperl
# The process
#
# Read the configure.ac file, and build a set of contents
# and put inputs into @make_input_list, or @other_input_files
# which are then put in @input_files ... set $dgb20 to see list as processed
#
# Each @input_files, and later @other_inputs (makefile.am) is processed in process_am_file()
# Sources are added to @msvc_c_files in form 'Lib/Project | Source | Title'
# extract_am_project then separates these into $am_projects{$lib} .= ['|'.]$lsc;
#
# The %am_project's are shown by show_am_projects( $main_root_dir );
# Then the 'other' projects are shown - show_other_projects( $main_root_dir );
# and finally all source files found show_all_sources( "makefile.am set", $main_root_dir );
# 04/04/2008 - add read of sub-directory 'configure.ac' if present ...
amsrcs02.pl
# AIM: MAKE DSP FILES - Given a folder, trace the makefile.am files, collecting
# libraries, applications and sources
# Show 'projects' found, and SHOW the sources of each.
# AND write a DSP file for each!!!
# While it confidently outputs a set of DSP files, and a DSW file, in
# complex cases these will not work very well, as it MISSES lots of includes, and libraries
# ================================
# 10/02/2010 - Review of this script
# ONLY GENERATES TEMPORARY DSP FILE(S), and 'temp_list.dsw' if the option $write_temp_ds is set to 1
# Add DSP 'sources' relative to a $target_dir, Remove a warning about no GROUP
#
# 2009-06-09 - change error exit to WARNING only, and continue processing
# 2009-05-09 - Add or ensure _CRT_SECURE_NO_DEPRECATE is added to defines
# 22/11/2008 - Problem, perhaps, in that it 'splits' fgfs into MANY libraries
# which is perhpas how it should be???
# Also see am2dsp[n].pl as well, which is the opposite, in that is COMBINES
# everything, including 'test' and 'utilties' into ONE ... and puts ALL the objects
# into Debug or Release, which would NOT account for duplicates!
# Also scan the 'top' directory for ALL FILE,
# and show files NOT in a project
# Add projects NOT addressed by main configure.ac and makefile.am
# 17/11/2007 - geoff mclane - http://geoffair.net/mperl
#
# The process
#
# Read the configure.ac file, and build a set of contents
# and put inputs into @make_input_list, or @other_input_files
# which are then put in @input_files ... set $dgb20 to see list as processed
#
# Each @input_files, and later @other_inputs (makefile.am) is processed in process_am_file()
# Sources are added to @msvc_c_files in form 'Lib/Project | Source | Title'
# extract_am_project then separates these into $am_projects{$lib} .= ['|'.]$lsc;
#
# The %am_project's are shown by show_am_projects( $main_root_dir );
# Then the 'other' projects are shown - show_other_projects( $main_root_dir );
# and finally all source files found show_all_sources( "makefile.am set", $main_root_dir );
# 04/04/2008 - add read of sub-directory 'configure.ac' if present ...
# 22/11/2008 - add /GR to DSP, and removed all \r output
# ###########################################################################################
amsrcs03.pl
# AIM: MAKE DSP FILES - Given a folder, trace the makefile.am files, collecting
# libraries, applications and sources. The process starts with scanning configure.ac (or .in)
# Show 'projects' found, and SHOW the sources of each.
# AND write a DSP file for each!!!
# While it confidently outputs a set of DSP files, and a DSW file, in
# complex cases these will not work very well, as it MISSES lots of includes, and libraries
# ================================
# 22/09/2010 - Suspended in favour of amsrcs04.pl
# 08/09/2010 - Another MASSIVE review - many, MANY CHANGES, including support for Makefile.in,
# when there is NO Makefile.am, immediate exit if no configure.ac found, many more user options, etc
# struggling between source directories - choose to suspend enhancement of this script
# and start a new amsrcs04.pl, done completely different!
# 10/02/2010 - Review of this script
# ONLY GENERATES TEMPORARY DSP FILE(S), and 'temp_list.dsw' if the option $write_temp_ds is set to 1
# Add DSP 'sources' relative to a $target_dir, Remove a warning about no GROUP
#
# 2009-06-09 - change error exit to WARNING only, and continue processing
# 2009-05-09 - Add or ensure _CRT_SECURE_NO_DEPRECATE is added to defines
# 22/11/2008 - Problem, perhaps, in that it 'splits' fgfs into MANY libraries
# which is perhaps how it should be???
# Also see am2dsp[n].pl as well, which is the opposite, in that is COMBINES
# everything, including 'test' and 'utilties' into ONE ... and puts ALL the objects
# into Debug or Release, which would NOT account for duplicates!
# Also scan the 'top' directory for ALL FILE,
# and show files NOT in a project
# Add projects NOT addressed by main configure.ac and makefile.am
# 17/11/2007 - geoff mclane - http://geoffair.net/mperl
#
# The process
#
# Read the configure.ac file, and build a set of contents
# and put inputs into @make_input_list, or @other_input_files
# which are then put in @input_files ... set $dgb20 to see list as processed
#
# Each @input_files, and later @other_inputs (makefile.am) is processed in process_am_file()
# Sources are added to @msvc_c_files in form 'Lib/Project | Source | Title'
# extract_am_project then separates these into $am_projects{$lib} .= ['|'.]$lsc;
#
# The %am_project's are shown by show_am_projects( $main_root_dir );
# Then the 'other' projects are shown - show_other_projects( $main_root_dir );
# and finally all source files found show_all_sources( "makefile.am set", $main_root_dir );
# 04/04/2008 - add read of sub-directory 'configure.ac' if present ...
# 22/11/2008 - add /GR to DSP, and removed all \r output
# ###########################################################################################
amsrcs04-new.pl
# AIM: To scan a GNU configure.ac, or configure.in input file, for output Makefiles, then
# successifly scan the Maekfile.am (or .in) files, and create a DSP file foreach LIBRARY,
# or PROGRAMS found in this make file san, then finally a DSW file.
# =======================================================================================
# NOTE: This is NOT really a follow on from amsrcs03.pl ;=((
# This is a COMPLETE rewrite using lib_acscan.pl, and lib_amscan.pl
# =======================================================================================
# History: Growing upwards...
# 28/09/2010 Conditionals in the Makefile.am are stored, BUT when it comes to choosing the
# correct sustitution, was just the FIRST TRUE always CHOSEN.
# Added the option like -
# --cond item[:1|0] (-c) = Define a conditional to be applied during parsing.
# Revert to previous, if no conditional defined by user, but write a temp/missed_cond_list.txt
# for items NOT defined.
# 23/09/2010:19/09/2010 - Lots of updates, changes, additions
# 08/09/2010 geoff mclane http://geoffair.net/mperl
amsrcs04.pl
# AIM: To scan a GNU configure.ac, or configure.in input file, for output Makefiles, then
# successifly scan the Makefile.am (or .in) files, and create a DSP file foreach LIBRARY,
# or PROGRAMS found in this make file san, then finally a DSW file.
# =======================================================================================
# NOTE: This is NOT really a follow on from amsrcs03.pl ;=((
# This is a COMPLETE rewrite using lib_acscan.pl, and lib_amscan.pl
# =======================================================================================
# History: Growing upwards...
# 11/07/2013 - Avoid duplicate component names, in lib_cmake.pl
# 27/06/2013 - Better grouping in cmake gen - remove double newlines - in lib_cmake.pl
# 01/06/2012 - New option --ADD proj:srcs to force a source file be add to the project, a source
# that may not be found in the Makefile.am files.
# 19/05/2012 - try to fix cmake install for projects like PLIB that has to be installed in /include/plib
# 11/05/2012 - More 'fixes' for unix running
# 10/05/2012 - Make some path_d2u() fixes...
# 10/05/2012 - Some tidying and do work to run in linux
# 18/04/2012 - Begin write of CMakeLists.txt files ;=))
# 17/04/2012 - Due to a WARNING from MSVC10 with auto on change adding out:bin\foo.exe to a copy to bin (like createdsp03.pl ddoes)
# 16/04/2012 - Put the copy BAT in C:\MDOS if it exists
# 19/02/2012 - add -v[num]
# 14/10/2011 - Found a case where only 2 Makefile.am found in configure.ac scan, BUT there is a line
# [01] 39: [AC_CONFIG_SUBDIRS(autoconf-lib-link gettext-runtime gettext-tools)], and these SUBDIRS do
# contain Makefile.am files... so add them to the list of AM to scan
# 03/08/2011 - FIX20110803 - Found macro in Makefile.am like E00 = # src1.c - This should yield NO source
# 21/04/2011 - FIX20110421 in lib_amscan.pl, to eliminate duplicate libs and paths.
# 27/03/2011 - FIX20110327 - -L<set> Allow the 'set' to include MULTIPLE libraries, for multiple project
# 2011-03-14 The -L <set> of library:path:[D|R|B][:project] could be EXTENDED to include
# multiple name, of both the library and project parts, like
# -L lib1;lib2:common_path:[D|R|B][:proj1;proj2;proj3
# Likewise -x project could be EXTENDED to be -x project1;project2;project3
# 23/03/2011 - FIX20110323 - Some minor improvement, and allow -I MACRO:project per project, and fix
# 2011-03-14:FIXED:20110322: The -D macro[:value] got real messed up with say
# '-D DEF_DIR=C:\some\path' Now FIXED 20110322 with got_colon_split(), and colon_split() subs
# 06/03/2011 - FIX20110306 - Set project RUNTIME - either 'T'=static /MT, or 'D'=DLL (default) /MD
# 30/12/2010 - Release 4.24, with some minor things in libraries...
# 18/11/2010 - Fix librayr input -L lib:path:D[;proj] to accept 'c:\' as not a colon split
# 03/11/2010 - Try moving JOINED to FIRST
# 31/10/2010 - Several important additional options, and when a user option -L a-lib.lib:lib:[D|R|B],
# where the a-lib.lib can be a semicolon separated list of libraries, but if no [;proj]
# also try to add this to the DSW, if a local library dependency, to set the build order.
# 21/10/2010 - Added new functions to handle
# defines on a project, by project basis, like
# -D TESTNUM=1:signal1, -D TESTNUM=2:signal2, -D TESTNUM=3:signal3
# AND set project type like SL to DLL, or CA to WA, but DLL NOT tested
# 28/09/2010 Conditionals in the Makefile.am are stored, BUT when it comes to choosing the
# correct sustitution, was just the FIRST TRUE always CHOSEN.
# Added the option like -
# --cond item[:1|0] (-c) = Define a conditional to be applied during parsing.
# Revert to previous, if no conditional defined by user, but write a temp/missed_cond_list.txt
# for items NOT defined.
# 23/09/2010:19/09/2010 - Lots of updates, changes, additions
# 08/09/2010 geoff mclane http://geoffair.net/mperl
analwarn.pl
# AIM: specialized reading of the MSVC 'warning' list, and sort them into groups
ansi-console.pl
# AIM: Display some color, using Win32::Console::ANSI;
ansicolor.pl
# AIM: Test some ANSI coloring - ANSI color sequences
# 12/12/2008 geoff mclane http://geoffair.net/mperl
ansicolor2.pl
aperltemplate.pl
# AIM: Using the file input, create a HTML table item
# 05/05/2010 geoff mclane http://geoffair.net/mperl
apsetup.pl
# AIM: Taking a BLANK application template, build a NEW application, in a NEW
# directory...
array01.pl
# AIM: To check out some array code ...
###use strict;
arrayref01.pl
# AIM: Passing and using an ARRAY REFERENCE - ie pass \@used_colors to a functions,
# then address the members of the arrya reference using the ${$arrayref}[NN] format ...
arrays01.pl
# AIM: Just some tests with an Array of Arrays
# 04/09/2007 geoff mclane - http://geoffair.net/mperl/
ascii.pl
# AIM: Ouput an ASCII 255 character chart
# 12/12/2008 - Added OCTAL, and wrap on 4, if ANY parameter added
# and added header lines
atlas-trk.pl
# AIM: Read, and display an Atlas 'track' file - a text file, with a bunch of nmea
# text strings - those emitted from a GP unit... example
# $GPRMC,010044,A,3142.142,S,14838.309,E,000.0,342.0,2112110,0.000,E*50
# $GPGGA,010044,3142.142,S,14838.309,E,1,,,-9999,F,,,,*24
# $PATLA,115.80,280.0,116.80,29.0,374*66
# 17/02/2011 - review
# 24/12/2010 geoff mclane http://geoffair.net/mperl
autoaccess01.pl
autoaccess02.pl
autoado01.pl
autoax01.pl
autoexcel01.pl
autoexcel02.pl
autoexcel03.pl
autoexcel04.pl
autoexcel05.pl
autoexcel06.pl
autoexch01.pl
autoexch02.pl
autoexch03.pl
# AIM: Download the $URL, and find the currency
# in a <PRE...> tag, between
# MONETARY, and
# MEMO: each line looking like -
# COUNTRY UNIT Aug. 21 Aug. 22 Aug. 23 Aug. 24 Aug. 25
# *AUSTRALIA DOLLAR 0.7640 0.7625 0.7628 0.7632 0.7568
# BRAZIL REAL 2.1364 2.1303 2.1346 2.1633 2.1593
#
autoexch04.pl
# AIM: Download the $URL, and find the currency
# heading in table, after CLEAN
#<td></td>
#<td>Code</td><td></td><td>Currency</td><td></td><td>fcu/CAD</td><td></td><td>fcu/USD</td>
#<td></td>
#<td>Code</td><td></td><td>Currency</td><td></td><td>fcu/CAD</td><td></td><td>fcu/USD</td>
#<td></td>
# sample row from table
#<tr>
#<td></td>
#<td> <tt>ARS</tt> </td><td></td><td>Argentine Pesos</td><td></td><td>2.7941</td><td></td><td>3.0958</td>
#<td></td>
#<td> <tt>MAD</tt> </td><td></td><td>Moroccan Dirham</td><td></td><td>7.8186</td><td></td><td>8.6630</td>
#<td></td>
#</tr>
autogif.pl
# AIM: Generate a GIF file, using Microsoft Graph ??.0 Object Library
# Used OLEVIEW.EXE -> expand 'Type Libraries' to find latest MS Graph Object library.
# 22/08/2007 - geoff mclane - http://geoffair.net/mperl/samples
autoie01.pl
autoie02.pl
autoie03.pl
autoie04.pl
autoie05.pl
autoquote01.pl
autoquote02.pl
autosp01.pl
autoword01.pl
autoword02.pl
autoword03.pl
autoword03b.pl
autoword04.pl
autoword05.pl
# AIM: To test out the following -
# from : http://www.wellho.net/solutions/perl-using-perl-to-read-microsoft-word-documents.html
# Extracting PARAGRAPHS from a word document.
# 29/08/2007 - geoff mclane - geoffair.net/mperl
avsize.pl
# AIM: Given an input folder, give the avaerage SIZE of the files contained. Default is current folder ...
# 7/2/2008 - geoff mclane - http://geoffair.net/mperl/
basename.pl
# AIM: simple example of using fileparse, and basename ...
# see http://perldoc.perl.org/File/Basename.html
basename02.pl
# AIM: simple example of using fileparse, and basename ...
# see http://perldoc.perl.org/File/Basename.html
bat2sh.pl
# AIM: Given a DOS BAT file, try to convert it to a linux shell script, hopefully...
bdlogger.pl
beep.pl
bin2hex02.pl
# AIM: Read a file in BINARY format, and prepare
# a hexadecimal display of the results ...
# base on
# bin2hex.pl by Chami.com
# http://www.chami.com/tips/
# added output to log file
# and if language is Perl, add the ASCII after the data
# geoff mclane - october, 2006
# site: http://geoffmclane.com/mperl/index.htm
bits.pl
# AIM: Testing bits
bldctbl.pl
# AIM: Very specific processing of a tidy cleaned winword html to a C table
bldtable.pl
# AIM: Build a link table to ZIP files, in a specific directory
# 27/08/2007 - some enhancements
# (a) Get the LIST of ZIP files from a FOLDER
# 30/07/2006 - geoff mclane - geoffair.net/fg
bldtable02.pl
# AIM: Build a link table to ZIP files, in a specific directory
# 28/08/2007 - list ZIPS in DATE ORDER
# *************************************************************************************
# NOTE WELL: the sub get_zip_txt($zipfile) uses MY PERSONAL zip8.bat to get CONTENTS
# NOTE WELL: This is MY zip listing BAT file, using the WINZIP
# NOTE WELL: command line interface. THIS MUST BE ADJUSTED TO GET EQUIVALENT RESULTS!!!
# *************************************************************************************
# 27/08/2007 - some enhancements
# Get the LIST of ZIP files from a FOLDER
# SEE ALSO zipindex03.pl!
# 30/07/2006 - geoff mclane - geoffair.net/fg
bldziptbl.pl
# AIM: Pointed to a FOLDER, search all ZIP files, and tar.gz, and
# build a HTML table with headings - Also see zipindex04.pl...
# Date Link Size MD5
# 11/12/2010 - Add single file input as well...
bldziptbl02.pl
# AIM: Pointed to a FOLDER, search all ZIP files, and tar.gz, and
# build a HTML table with headings - Also see zipindex04.pl...
# Date Link Size MD5
# 18/11/2011 - Add
# 24/08/2011 - Allow wild card input
# 02/08/2011 - Some minor fixes
# 06/06/2011 - Extend a single input, to an input list
# 11/12/2010 - Add single file input as well...
blog2cmake.pl
# AIM: Take an nmake log, and build a CMakeLists.txt from it
# *** THIS FAILED - JUST TOO COMPLICATED, especially with regard to the directory changing
# 08/03/2014 geoff mclane http://geoffair.net/mperl
bob2.pl
booksxml.pl
btgvers.pl
builddsp.pl
# AIM: Accepts a directory for INPUT
# and a directory for OUTPUT
# and a project TYPE - window, console, static lib, or DLL
# Scan the INPUT for *.c* and *.h* files, and BUILD a 'temp' DSP
# to be placed in the OUTPUT folder, and use all the C/C++ files
# as the sources
# 16/03/2013 - change 'require' lib name form chkincinc.pl to lib_inkinc.pl
# 2009/09/17 - added '# FILE LIST <<EOL' ....... '# EOL' as a SUGGESTED list of SOURCES
# Must ensure these sources are in the MIX...
# 8/15/2009 - geoff mclane - http://geoffair.net/mperl/
c2h01.pl
# AIM: Convert a C/C++ file to HTML, adding color
# 22/09/2010 - review, and improve
# 09/11/2007 - geoff mclane - http://geoffair.net/mperl
c2htm.pl
# AIM: Convert C/C++ code to colored HTML
# I am sure I have done this before, but where???
caller.pl
# AIM: to test caller function ...
camera01.pl
# AIM: Obtain digital camer information from web
# 18/07/2008 geoff mclane http://geoffair.net/mperl
check2cmake.pl
# AIM: Quite Specific reading a ./configure log, parsing the 'checking' lines,
# and convert to cmake form...
checkifd.pl
# AIM: To check the openning and closing of #if #ifdef #ifndef #else #endif blocks in a C/C++ file
# 3/13/2009 - geoff mclane - http://geoffair.net/mperl/
chk-srtm.pl
# AIM: Given a SRTM block, check if it exists
# 07/06/2011 geoff mclane http://geoffair.net/mperl
chk4incs.pl
# AIM: Given a C/C++ files, check for #include <inc.h> or "inc.h" etc, and follow that list
# 07/05/2012 - Initial cut
chk4key.pl
# AIM: Find a way to POLL the keyboard
# 05/09/2010 - Added seconds waited, and cycles...
# 14/12/2008 geoff mclane http://geoffair.net/mperl
chkactri.pl
# AIM: Read an AC3D file, and check if ALL surfaces are tri - three vectors
# 11/05/2013 geoff mclane http://geoffair.net/mperl
chkatlaspal.pl
# AIM: Read Atlas palette file, and list colors, and material,
# and show colors NOT used.
# 22/01/2009
chkbatlabel.pl
# AIM: Given a batch file check each 'goto' statement has a corresponding label
# 14/06/2014 - Add verbosity to see labels with no call or goto
# 01/06/2012 - Fix for 'special' goto :EOF label, and [@(] call [:]CHKIT
# 20/05/2012 geoff mclane http://geoffair.net/mperl
chkbraces.pl
chkcflog.pl
# AIM: Read and show details from the cf_client LOG file
chkcmake02.pl
# AIM: Used to develop lib_cmakeread.pl
# 02/05/2012 - Looking quite smooth ;=))
chkcopies.pl
# AIM: Quite Specific - I keep a 'chain' of zip saves, with the appended number
# denotes the next save. List these groups in a directory
chkcss.pl
# AIM: Given a CSS file, checks some syntax, and reports missing url items
# 10/11/2013 geoff mclane http://geoffair.net/mperl
chkdae.pl
# AIM: Load and review a dae file - COLLADA - http://www.collada.org
# COLLADA defines an XML-based schema to make it easy to transport 3D assets between applications
# 16/05/2013 geoff mclane http://geoffair.net/mperl
chkdbgflag.pl
# AIM: VERY SPECIFIC - Check for ($dbg & (\d+))
# 02/08/2010 geoff mclane http://geoffair.net/mperl
chkdbgon.pl
# AIM: VERY SPECIFIC : Check all perl scripts for my $debug_on NOT 0
# 04/11/2011 - Do a special check on file in the LIST FILE, if file 'tempzl2.txt'
# if available. This is generated by the zipamupd.bat file...
# 24/08/2010 geoff mclane http://geoffair.net/mperl
chkdupes.pl
# AIM: Read a folder, and subfolders, and check for any duplicate file names
# This is so they can all be put in one folder, if possible
# 07/07/2013 - Tied to reduce the 'duplications' but seem to have failed
# 01/02/2013 - Hopefully fix to run in linux
# 19/11/2011 - Allow first item of two to be a single file
# 18/11/2011 - Fix bug if two folder given - src and dest
# 15/08/2011 - Update...
# 22/07/2008 geoff mclane http://geoffair.net/mperl
chkfgairsize.pl
# AIM: VERY SPECIFIC - Scan the given FG data\Aircraft folder for items in
# @air_list, and write a list of all other NOT listed...
# 04/07/2010 geoff mclane http://geoffair.net/mperl
chkfgmenu.pl
# AIM: VERY SPECIFIC - Check my fgmenu.js, and the compare with the fg folder,
# and report MISSING files - files that need to be added to the menu
chkgdal.pl
# AIM: VERY SPECIFIC scan of bldlog file after gdal build
chkhlink1.pl
# AIM: Given a input FOLDER, check all the HTML found for a <a href="...."
# reference and make sure that reference EXISTS,
# either as a LOCAL file,
# or that an IP address can be obtained for the HOST if http://<something> ...
# 08/11/2011 - Account for my space saving like fgfs-src.zip is only as fgfs-src.zip.txt
# 15/09/2011 - Add -d = Directory scan, show unlinked items. In this also added
# searching HTML for <link href="..." ...>, and <img src="..."...>
# and switched to using lib_utils.pl
# 08/09/2011 - Write temporary results ONLY to 'perl' directory
# 02/08/2011 - Lots of updates of the UI
# 31/05/2007 - geoff mclane - geoffair.com/mperl/index.htm
chkhlinks.pl
# AIM: Given a input FOLDER, check all the HTML found for a <a href="...."
# reference and make sure that reference EXISTS,
# either as a LOCAL file,
# or that an IP address can be obtained for the HOST if http://<something> ...
# 31/05/2007 - geoff mclane - geoffair.com/mperl/index.htm
chkhsrc.pl
# AIM: Given a input FOLDER, check all the HTML found for a <img src="...."
# reference and make sure that reference EXISTS ...
# 31/05/2007 - geoff mclane - geoffair.com/mperl/index.htm
chkhtml.pl
# AIM: Just parse HTML elements, and report any problem
# 2010/04/06 - geoff mclane - http://geoffair.net/mperl/
chkifdef.pl
# AIM: Scan a file or a directory, and check all files for #ifdef ????, and list them...
# 04/08/2013 - Output if stack count for each line output
# 30/05/2012 - Update UI
# 2009/09/17 - geoff mclane - http://geoffair.net/mperl/
chkinclist.pl
# AIM: VERY SPECIFIC - read MSVC 'include' list found, and analyse
# 8/27/2009 - geoff mclane - http://geoffair.net/mperl/
chkinstall.pl
# AIM: Read a cmake_install.cmake file, and list what will be 'installed' if run...
chkintlinks.pl
# AIM: Given a HTML file, check for <a name="abc"...> and <a href="#abc"...>
# are consistent
# 13/11/2008 - geoff mclane - http://geoffair.net/mperl
chkjsac.pl
# AIM: Read a the javsscipt file generated from an AC3D file, and...
# 07/05/2013 geoff mclane http://geoffair.net/mperl
chkjsac02.pl
# AIM: Read a the javsscipt file generated from an AC3D file, and...
# 10/05/2013 - Begin to use the JSON parser
# 07/05/2013 geoff mclane http://geoffair.net/mperl
chkjson.pl
# AIM: Read a JSON file, and re-line it and output
# 01/03/2014 - Do NOT add space when joining lines
# 13/02/2014 - Reduce moise if NOT Three.js
# 21/06/2013 - More checks IFF it is a Three.js JSON file
# 06/03/2013 - Added batch file to run it
# 26/12/2012 - Add some default test code
chklib.pl
# AIM: VERY SPECIFIC - check LIBCMT or LIBCMTD in library
# Uses my 'fa4' utitlity
chklink.pl
# AIM: Develop a method to CHECK a URL link ...
# 2010/04/19 - some minor tidying only...
# 23/08/2007 geoff mclane geoffair.net/mperl
chklinklog.pl
# AIM: Check the Link: entry of the MSVC10 'log' file
chklinks01.pl
# AIM: Given a input FOLDER, check all the HTML found for a <a href="...."
# reference and make sure that reference EXISTS,
# either as a LOCAL file,
# or that an IP address can be obtained for the HOST if http://<something> ...
# AND check ALL image links <img src="..."...>, if it is a LOCAL file,
# and other 'link' items, like .zip, .txt, etc.
# 02/06/2007 - geoff mclane - geoffair.com/mperl/index.htm
chklinks02.pl
# AIM: Given a input FOLDER, check all the HTML found for a <a href="...."
# reference and make sure that reference EXISTS,
# either as a LOCAL file,
# or that an IP address can be obtained for the HOST if http://<something> ...
# AND check ALL image links <img src="..."...>, if it is a LOCAL file,
# and other 'link' items, like .zip, .txt, etc.
# 18/06/2007 - Add some command parameters, and help
# 02/06/2007 - geoff mclane - geoffair.com/mperl/index.htm
chklinks03.pl
# AIM: Given a input FOLDER, check all the HTML found for a <a href="...."
# reference and make sure that reference EXISTS, either as a LOCAL file,
# or that an IP address can be obtained for the HOST if http://<something> ...
# AND check ALL image links <img src="..."...>, if it is a LOCAL file,
# and other 'link' items, like .zip, .txt, etc.
#
# 17/10/2013 - Default is to follow page links. Added -nofollow to only do the page
# 22/05/2011 - More tidying, reducing output to 'essentials' unless -v2 or more
# 19/05/2011 - Fix of 20100312 fix, to find substitutes '.txt' files
# 02/04/2010 - Some more 'fixes' - continue 2010/04/04 - 2010/04/12...
# 2010/04/01 - Fix for 'remove_script' - to move to htmltools.pl
# 15/03/2010 - After a number of 'fixes', starting to feel SOLID ;=))
# 12/03/2010 - Special case - I have replaced large ZIPS, with a TEXT
# file, so do NOT give this WARNING, if such a .txt file exists.
# 11/03/2010 - Lots of tidying, and fixing... experimented with another collecthrefs2
# but found only difference is in the DUPLICATE that can be in htmltools::collecthrefs
# 13/11/2008 - some tidying, especially when from ONE FILE
# where there will be NO from|to references
# 18/06/2007 - Add some command parameters, and help
# 02/06/2007 - geoff mclane - geoffair.com/mperl/index.htm
chklists.pl
# AIM: VERY SPECIFC - scan two lists...
chklocal.pl
# AIM: Read a fgms log, and check if there are any LOCAL pilots
# 04/08/2012 - First cut
chklog.pl
# AIM: VERY SPECIFIC - read a log lokking for specific things...
chkmanifest.pl
# AIM: Given a MANIFEST file, check that the directory structure and files
# within match that manifest ...
# 07/08/2008 geoff mclane http://geoffair.net/mperl
chkos.pl
# AIM: Just output the OS string...
chkosgver.pl
chkoutput.pl
# AIM: VERY SPECIFIC - check the MSVC output for 'unknown' lines...
# 2009/09/25 - geoff mclane - http://geoffair.net/mperl/
chkpath.pl
# AIM: Find a file using the PATH environment variable ...
# 01/12/2007 - geoff mclane - geoffair.net/mperl
chkpath2.pl
chkperl.pl
# AIM: Rought attempt to find an error in perl syntax
# 04/11/2009 - more tries at being helpful
# 2009/10/29 - some updates, and changes
# 9/1/2009 - geoff mclane - http://geoffair.net/mperl/
chkpylons.pl
# AIM: Read FG DATA 'STG' file, and use sggeod.exe to get distance between pylons
# very specific
# 2010/03/02 - geoff mclane - http://geoffair.net/mperl/
chkquotes.pl
# AIM: Parse a file, and advise ANY line which ends without closing QUOTES "'" or '"'
chkrefs.pl
# AIM: VERY SPECIFIC: Read in a BIG list of 'refs n', and delete all refs 3 and 4
chkrelpath.pl
# AIM: Just to test and check the relative path generation
chkrequire.pl
# AIM: Givin an input perl script file name, search for files 'required' by that script
# 10/05/2012 - Improve UI
# 2010-08-14 - Initial cut
chkwebsrc.pl
# AIM: SPECIFIC - Compare the soures published on the my web, with the original,
# and report changes...
# 29/12/2010 geoff mclane http://geoffair.net/mperl
chkxml.pl
# AIM: Given an XML file, test it - a SIMPLE test
# 27/01/2010 - add BOM support, even GUESSING when no BOM!!!
# 23/01/2010 - update many many things,
# but still does NOT handle UTF-16 encloded files - see below
# 15/11/2008 - geoff mclane - http://geoffair.net/mperl
# ###########################################################
chkxml2.pl
# AIM: Given a directory, check ALL xml files
# (a) for a BOM, and (b) for xml character encoding
chkziptxt.pl
# AIM: Read an input file as a ZIP.TXT - a text listing of a big ZIP file
# Quite specialised, in that this file MUST contain MY MD5 output exactly
# 08/11/2011 geoff mclane http://geoffair.net/mperl
cleandiff.pl
# AIM: To remove some things from an input diff file ...
# 1 - remove Only in blah blah ...
# 2 - remove diff of .dsp files ...
# and write results to an output file
# 11/2/2008 geoff mclane http://geoffair.net/fg
cleandiff02.pl
# AIM: To remove some things from an input diff file ...
# 1 - remove Only in blah blah ...
# 2 - remove diff of .dsw, .dsp, .sln, .vcproj files ...
# and write results to an output file
# 02/12/2013 - Add -x *.html;*.sip list of wild card excludes
# 22/09/2013 - Add a -KO to add ALL 'Only in ...' lines
# 05/09/2013 - Modify -ko options to NOT show .git folder items, and order the list
# 11/02/2013 - Default output changed to tempclean.diff
# 28/03/2012 - Add .vcxproj to excluded list
# 23/03/2012 - Add -u to convert paths to unix path speparator
# 05/01/2012 - Added special -x _cmake_, and excluded file '.gitignore'
# 10/12/2011 - If VERB, output a changed file list
# 17/11/2011 - Add -o <file>, to set the OUTPUT of the cleaned diff
# 29/06/2011 - Add -x <file>, to exclude a specific 'file' from the diff
# 26/05/2011 - Improve UI
cleanhtm.pl
# AIM: To clean certain items from a HTML document ...
cleanhtm02.pl
# AIM: To clean certain items from a HTML document ...
# specifically target microsoft word 'filtered' output which uses a
# paragraph style which places every line in a <p> ... </p>,
# and to denote REAL paragraphs, inserts a <p>&nbsp;</p> line ...
# Thus to remove some of the <p>, using a <br> to get to a new line ...
# =====================================================================
cleanhtm03.pl
# AIM: To clean certain items from a HTML document ...
# specifically target microsoft word 'filtered' output which uses a
# paragraph style which places every line in a <p> ... </p>,
# and to denote REAL paragraphs, inserts a <p>&nbsp;</p> line ...
# Thus to remove some of the <p>, using a <br> to get to a new line ...
# =====================================================================
cleaninstall.pl
# AIM: QUITE SPECIALIZED During the install to the 3rdParty folder, a copy of what has
# been installed is written to say C:\FG|17\3rdParty\installed.txt
# But multiple builds of a project adds multiple set of that project to this file
# This script reads the files, and attempts to remove 'duplicates'
cleantd01.pl
# AIM: To clean certain items from a HTML document ...
# specifically target microsoft word 'filtered' output.
# Search for 'tables', and remove 'style' attribute from <td>,
# and '<p ...></p><o:p></o:p> and <span> from within ...
# =====================================================================
cleanup.pl
# AIM: To build a CLEANUP batch file
# for a DIRECTORY ...
# Presently no input - you must adjust the my_folder variable
# Only searches for targets directories containing -
# *.obj or *.sbr or *.idb or *.pdb or *.ncb or *.opt
# and temp*.* - with one exception is the 'CVS' directory 'Template' file
# Uses a CLOBNOW.BAT file to do the cleanup in a folder
# Uncomment write_clobnow2 below to write this batch file,
# which obviously HAS to be renamed to 'clobnow.bat', and
# put in a VALID runtime PATH ...
cleanup02.pl
# AIM: Given an input folder, search for where there exists object files,
# and clean these up using a special CLOBNOW batch file ...
# This is a re-write - See cleanup.pl for previous version
# 12/07/2008 geoff mclane http://geoffair.net/mperl
client1.pl
client2.pl
client5.pl
client6.pl
clipboard01.pl
# AIM:
cmakebins.pl
# AIM: Given a CMakeLists.txt file, or a directory, show add_library, and add_executable
# items found...
# 22/05/2013 - some improvements like show line numbers where fix should happen
cmakebuilds.pl
# AIM: Read a CMakeLists.txt file, and show what it builds
cmakeconfig.pl
# AIM: Convert a 'config.h' to a CMake config.h.cmake
cmakeopts.pl
cmakesrcs.pl
# AIM: Given a folder, follow the CMakeLists.txt trail, and list projects and source
# 13/07/2013 geoff mclane http://geoffair.net/mperl
cmp2dsps.pl
# AIM: Comparison of TWO DSP files - show different SOURCE files only ...
#
# 20090828 - BUG squashed ;=)) This was '$i1', which is WRONG $v6_srcs2[$i2][4] = $i1 + 1;
# 20090827 - Some improvements in configuration compare
#
# 13/08/2008 geoff mclane http://geoffair.net/mperl
# Only compares SOURCE lists. Still to compare config parameters ...
cmp2dsps02.pl
# AIM: Comparison of TWO DSP files - show different SOURCE files, and configurations...
# 04/07/2010 - Make the MISSED1: output list, ready for DSP insertion
# 02/06/2010 - Do better compare of CONFIGS...
# 2010/05/08 - Kill get_rel_path() warning, by ensuring $dir is set correctly...
# 2010/01/14 - Reduce output to MINIMUM, unless 'verbose' set...
# 2009/10/28 - Use references, and add a command line
# 20090828 - BUG squashed ;=)) This was '$i1', which is WRONG $v6_srcs2[$i2][4] = $i1 + 1;
# 20090827 - Some improvements in configuration compare
#
# 13/08/2008 geoff mclane http://geoffair.net/mperl
# Only compares SOURCE lists. Still to compare config parameters ...
cmp2dsps03.pl
# AIM: Comparison of TWO DSP files - show different SOURCE files, and configurations...
# 05/04/2012 - add -vN
# 07/01/2011 - small fix in space_split_with_quotes to add last item, if any...
# 26/09/2010 - Review, and improve - add use File::Spec; to convert relative inputs to absolute
# 04/07/2010 - Make the MISSED1: output list, ready for DSP insertion
# 02/06/2010 - Do better compare of CONFIGS...
# 2010/05/08 - Kill get_rel_path() warning, by ensuring $dir is set correctly...
# 2010/01/14 - Reduce output to MINIMUM, unless 'verbose' set...
# 2009/10/28 - Use references, and add a command line
# 20090828 - BUG squashed ;=)) This was '$i1', which is WRONG $v6_srcs2[$i2][4] = $i1 + 1;
# 20090827 - Some improvements in configuration compare
#
# 13/08/2008 geoff mclane http://geoffair.net/mperl
# Only compares SOURCE lists. Still to compare config parameters ...
cmp2dsw.pl
# AIM: Compare 2 DSW files
# 29/09/2010 geoff mclane http://geoffair.net/mperl
cmparrays.pl
# AIM: VERY SPECIFIC - load a log file, and compare triangle listings
# 09/12/2009 geoff mclane http://geoffair.net/mperl
cmpcomp.pl
# AIM: Compare tow compiler strings ...
cmpconfigs.pl
# AIM: Compare 2 config files...
# 8/21/2009 - geoff mclane - http://geoffair.net/mperl/
cmpdefines.pl
# AIM: Compare TWO header files, and list and compare the #defines in each ..
# 2010/01/01 - Revisited, and updated...
# 01/06/2008 - Initial try - geoff mclane - http"//geoffair.net/mprerl ...
cmpdirs.pl
# AIM: A simple COMPARE of the files in one directory, with those in another
# 01/11/2008 - geoff mclane - http://geoffair.net/mperl
cmpdirs02.pl
# AIM: Complete re-write of cmpdirs.pl
cmpdist.pl
# AIM: Use perl trib function for distance London to Tokyo...
# from : http://perldoc.perl.org/Math/Trig.html
cmpexports.pl
# AIM: Given two DLL files, run 'dumpbin /EXPORTS <DLL>' on each,
# and compare the results...
# 7/9/2009 - geoff mclane - http://geoffair.net/mperl/
#
cmpfgpl.pl
# AIM: Specialized to COMPARE two folders
# 21/11/2008 geoff mclane http://geoffair.net/mperl
# localtime() - a 9-element array with the time analyzed for the local time zone
# my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
#@f = (localtime)[3..5]; # grabs day/month/year values
# printf "%02d/%02d/%02d\n", $f[2] + 1900, $f[1] +1, $f[0] ;
cmpicao.pl
# AIM: *** VERY SPECIFIC *** Compare 3 different ICAO list
cmpini.pl
# AIM: Compare 2 INI files, showing same, different and missing items ...
# 30/12/2009 - minor update
# 19/02/2008 geoff mclane http://geoffair.net/mperl
cmpphonebooks.pl
# AIM: QUITE specific - compare phone books used by fgcom
cmppositions.pl
# AIM: QUITE specicific compare two fgcom positions.txt file
cmptriangles.pl
# AIM: VERY SPECIFIC - load a log file, and compare triangle listings
# 06/12/2009 geoff mclane http://geoffair.net/mperl
cmpvc8todsp.pl
# AIM: Load a VC8 project file (.VCPROJ), and compare it with a VC6 DSP (.DSP) file,
# and SHOW different sources ...
cmpvcprojs.pl
# AIM: To compare two VCPROJ files, and list -
# (a) the different source, either added or deleted, and
# (b) the differenct libraries, for both Debug and Release ...
# This implementation was based on the code from vcprojlist.pl, and sln2dsw.pl
# If given SOLUTION file (*.SLN), then each prject contained, will be compared.
# 07/03/2008 - geoff mclane - http://geoffair.net/mperl/samples
cmpvcprojs02.pl
# AIM: This is a COMPLETE rewrite of cmpvcprojs.pl
# Just to load, and compare two vcproj files
# 2010/04/23 - geoff mclane - http://geoffair.net/mperl/
cnthgt.pl
# AIM: *** VERY SPECIALISED *** Just count some HGT files in a folder...
cntntypes.pl
# AIM: *** VERY SPECIFIC *** Read a large json all.all.json file, and enumerate the objects
codebox.pl
color3.pl
# AIM: To build a COLOR WHEEL in HTML
color4.pl
# AIM: To take an X,Y, and convert to a color ...
###use strict;
color_rb.pl
# AIM: Another attempt a generating a color table
colors1.pl
colortable.pl
# AIM: Generate an 512 color table
# 12/01/2008 - geoff mclane - http://geoffair.net/mperl
#
comex1.pl
comread.pl
comread2.pl
comread3.pl
conf2cmake.pl
# AIM: Given a config.h.in file, convert #define #undef to #cmakedefine, and try to
# read the ususal preceeding comment for the include file or function name and
# write the equivalent CMakeLists.txt text.
# 29/10/2013 geoff mclane http://geoffair.net/mperl
confscan.pl
# AIM: Scan of a GNU configure file
convcr.pl
convdegrees.pl
# AIM: To convert Farenheight to Centigrade and vice versa
# 20/11/2007 geoff mclane - http:geoffair.net/mperl
convstranon.pl
# AIM: Deal with a structrue conversion
# 8/30/2009 - geoff mclane - http://geoffair.net/mperl/
convstruct.pl
# AIM: Convert a GCC structure declaration to one compatible with MSVC
#
# 20090827 - some improvements - seems to be working well. One idea would be
# to have more than 1 structure definition hash, and thus be able to 'decode'
# different instance declarations. And then combine instance declaration, and handle
# each separatel... and finally, simply read the C/H files directly ;=))
#
# 8/21/2009 - geoff mclane - http://geoffair.net/mperl/
copyhoh.pl
# AIM: copy a hash, into a hash reference, as the value
copyperlist.pl
# AIM: Copy a set of files per a simple list
# 13/04/2013 geoff mclane http://geoffair.net/mperl
countfile.pl
# AIM: Load the templines.txt file, and process the extries more
# 03/11/2007 geoff mclane - http://geoffair.net/mperl
countword.pl
# AIM: Read ALL source files, counting the total lines, and count how many times
# a particular 'word' occurs in that source. Avoids certain BINARY files.
# In this case the word is 'const' ...
# 31/10/2007 geoff mclane - http://geoffair.net/mperl
createdsp.pl
# AIM: Given a single source file, generate a simple DSP file, using the
# name as the project name...
# 09/08/2010 geoff mclane http://geoffair.net/mperl
createdsp02.pl
# AIM: Given a set of source files, generate a simple DSP file, using the first source
# name as the project name, unless given other parameters...
# 25/08/2010 - Review and update
# 09/08/2010 geoff mclane http://geoffair.net/mperl
createdsp03.pl
# AIM: Given a set of source files, generate a simple DSP file, using the first source
# name as the project name, unless given other parameters...
# 17/04/2012 - minor changes - put HELP at bottom
# 30/03/2012 - FIX20120330 - While '_D' is easier to ident, CMake uses just 'd', so back to that
# BUT now this causes a WARNING in MSVC10 ;=(( Should use a post-build event... ie '-NEW_POST-' like
# # Begin Special Build Tool
# SOURCE="$(InputPath)"
# PostBuild_Desc=Copy Release EXE
# PostBuild_Cmds=@if NOT EXIST bin md bin copy Release\patch\patch.exe bin\patch.exe
# End Special Build Tool
# 19/02/2012 - FIX20120219 - allow space delimited source list
# 16/10/2011 - FIX20111016 - dsw file to get correct dsp name
# 04/08/2011 - FIX20110804 - add an 'outdsw' command, to also write a DSW file, if none exists
# 23/04/2011 - FIX20110423 - Do NOT allow PURE DUPLICATED SOURCES in list
# 28/01/2011 - Fix if command contained a '-' char
# 25/12/2010 - Address some relative source BUGS, like $use_usr_src
# 13/10/2010-20/10/2010 - Major update
# 25/08/2010 - Review and update
# 09/08/2010 geoff mclane http://geoffair.net/mperl
csslist.pl
# AIM: Given an input folder, search for ALL file *.css, recursively,
# and build and show a hash list of the results...
# 11/07/2010 - checkout run only - looks ok
# 17/03/2010 geoff mclane http://geoffair.net/mperl
cvstime.pl
# AIM: To examine an input directory, seeking CVS folders and files,
# and reporting when the last update was done.
# 15/08/2007 - geoff mclane - geoffair.net/mperl
# SEE cvsversion.pl for the latest, and greatest ;=))
cvsversion.pl
# AIM: To examine an input directory, seeking CVS folders and files,
# and reporting when the last update was done.
# 10/12/2010 - Review - remove no warnings message...
# 2010/02/14 - add -v[n] to report more. N is size of time list stack,
# and added -xf <file>, and -xd <dir> to EXCLUDE these items (CaSe sensitive!)
# 10/11/2009 - Some further tidying, and move recursive directory to end of function
# Add prtw(), and show_warnings()
# 09/11/2009 - Added bytes-to-ks for $total_bytes, and get LOCAL directory sizes
# 31/10/2009 - But it reported the latest FILE, but want the latest CVS file
# 15/08/2007 - geoff mclane - geoffair.net/mperl
data2struct.pl
# AIM: VERY SPECIFIC
# 29/09/2009 geoff mclane http://geoffair.net/mperl
datecalc.pl
#AIM: Test DATE/TIME functions
# see : http://www.perl.com/CPAN/modules/by-module/Date/
# see : http://www.perlhowto.com/node/26 - working with date/time
# see : http://www.perl.com/cs/user/query/q/6?id_topic=73 - Date::Parse
# Converts date strings into Unix time values. (A Unix time value is the number of
# seconds since January 1, 1970.) [pod]
# Not included in AcivePerl, and could not find Date::Parse
# using PPM installed Date-Calc in the hope ...
# from : ppm
# ppm install Date-Calc, got -
# Successfully installed Date-Calc version 5.4 in ActivePerl 5.8.6.811.
# this has the functions - use Date::Calc qw(
# Days_in_Year Days_in_Month Weeks_in_Year leap_year check_date check_business_date
# Day_of_Year Date_to_Days Day_of_Week Week_Number Week_of_Year Monday_of_Week
# Nth_Weekday_of_Month_Year Standard_to_Business Business_to_Standard
# Delta_Days Delta_DHMS Add_Delta_Days Add_Delta_DHMS Add_Delta_YMD
# System_Clock Today Now Today_and_Now Easter_Sunday Decode_Month
# Decode_Day_of_Week Decode_Language Decode_Date_EU Decode_Date_US
# Compress Uncompress check_compressed Compressed_to_Text Date_to_Text
# Date_to_Text_Long English_Ordinal Calendar Month_to_Text Day_of_Week_to_Text
# Day_of_Week_Abbreviation Language_to_Text Language Languages Decode_Date_EU2
# Decode_Date_US2 Parse_Date );
# formats of output
# 1 English : "Wwwwww, Mmmmmm ddth yyyy"
# 2 French : "Wwwwww, le dd Mmmmmm yyyy"
# 3 German : "Wwwwww, den dd. Mmmmmm yyyy"
# 4 Spanish : "Wwwwww, dd de Mmmmmm de yyyy"
# 5 Portuguese : "Wwwwww, dia dd de Mmmmmm de yyyy"
# 6 Dutch : "Wwwwww, dd. Mmmmmm yyyy"
# 7 Italian : "Wwwwww, dd Mmmmmm yyyy"
# Date_to_Days -
# This function returns the (absolute) number of the day of the given date,
# where counting starts at the 1st of January of the year 1 A.D.
# thus $unixsecs = ((Date_to_Days($year,$month,$day) - Date_to_Days(1970,1,1)) * 24 * 60 * 60);
# Because counting starts at '1', you will actually have to subtract '1' from the
# canonical date in order to get back the original date:
# eg $canonical = Date_to_Days($year,$month,$day);
# ($year,$month,$day) = Add_Delta_Days(1,1,1, $canonical - 1);
dec2hex.pl
def2stg.pl
# AIM: Read an input file ...
# search for '#define ABC <something>
# output a WMSTR val, stg, 0 for each item ...
# geoff mclane - http://geoffmclane.com/mprel/index.htm - 20070408
degs2rads.pl
# AIM: Given input of DEGREES, output RADIANS
# 17/08/2010 geoff mclane http://geoffair.net/mperl
delline.pl
# AIM: Search for a line, and delete it, and write file out
delperlist.pl
# AIM: Delete a set of file per an input file list
# 23/05/2013 geoff mclane http://geoffair.net/mperl
delsame.pl
# AIM: Given an input file, scan deleting blank and same lines
delsvn.pl
# AIM: To read a diff -u file, and exclude files in .svn folders...
# 8/30/2009 - geoff mclane - http://geoffair.net/mperl/
diffanal1.pl
# AIM: to read a diff file, and search for specific items
# 2006.09.10 - added missing files, but must exclude _cti_cnf
difflist.pl
# AIM: Read a *.diff -u output and pepae a list of files that differ
# 15/08/2013 geoff mclane http://geoffair.net/mperl
dir2bat.pl
# AIM: HIGHLY SPECIFIC - Scan C:\FG\18 getting all subdirectorie, then scan
# c:\MDOS\*.bat files, and out a list matching the folder with a batch file
# 11/08/2013 geoff mclane http://geoffair.net/mperl
dir2list.pl
# AIM: Given a 'directory' file input, output a list ...
dir2list02.pl
# AIM: Take a directory listing file, and write it as a simple list
# 28/10/2013 - -bear list should also effect file written
# 06/07/2013 - Add -find to indicate it is a fa4 list
# 19/05/2013 - Add
# 08/01/2013 - Some updates
# 11/11/2011 - Some improvement in the UI...
dir2nsis.pl
# AIM: Given an input directory, scan it, and write out the results
# to a NSIS nsi include file.
# 27/07/2012 - Initial cut
dirbydate.pl
# AIM: Read a file output from the DIR command, and order the files in DATE
# order ... drop out the pure <DIR> entries ...
# 28/02/2012 - FIX20120228 - Add -bare (-b), for output of a BARE list
# 09/09/2011 - FIX20110909 -Since Qt use 'gcc', add *.o to -x-msvc built files
# 03/08/2011 - FIX20110803 - Option -dir-list adds the file item name
# 24/04/2011 - FIX20110424 - Add -t nn option; begin using short args...
# 26/03/2011 - Add skip-repo to skip .git .svn and CVS directories
# 01/07/2010 - Fix bug in $tail_cnt listing...
# 28/06/2010 - Add -tail=<num> 0 for all, else only show tail of this count.
# 25/06/2010 - Add -skip-cvs to SKIP showing the 'CVS' directory, and skip-git to skip '.git'
# 01/05/2010 - Added -v to set $verbose, and reduced output if not
# 04/03/2010 - Limit maximum list width
# 2010/01/02 - Add parse_args(), and add some switches
# 2/13/2009 - Add delete (unlink) of log file at end, and skip if <DIR> is 3[2] or 4th[3] entry...
# 10/18/2008 - Account for American MM/DD/YEAR, and inhibit <DIR> listings
# 20061219 - Can NOT use just $0 to get script name, since when directly invoke from
# a command prompt, it becomes C:\GTools\Perl\dirbydate.pl, so added some regex to
# massage the name, and just get the perl script name ... if a DRIVE included /^\w{1}:\\.*/
# AND, to enable it to FIND the logfile.pl, add unshift(@INC, 'C:/GTools/perl');
# OR this can be use lib '/Users/User/perl-lib';, or perl -MC:/GTools/perl -e dirbydate.pl
# and added a $evenspace option ...
dirbydateold.pl
# AIM: Read a file output from the DIR command, and order the files in DATE
# order ... drop out the pure <DIR> entries ...
dirbyname.pl
# AIM: Read a file output from the DIR command, and order the files in DATE
# order ... drop out the pure <DIR> entries ...
# 18/07/2010 - Convert dirbydate.pl, to dirbyname.pl
# 01/07/2010 - Fix bug in $tail_cnt listing...
# 28/06/2010 - Add -tail=<num> 0 for all, else only show tail of this count.
# 25/06/2010 - Add -skip-cvs to SKIP showing the 'CVS' directory, and skip-git to skip '.git'
# 01/05/2010 - Added -v to set $verbose, and reduced output if not
# 04/03/2010 - Limit maximum list width
# 2010/01/02 - Add parse_args(), and add some switches
# 2/13/2009 - Add delete (unlink) of log file at end, and skip if <DIR> is 3[2] or 4th[3] entry...
# 10/18/2008 - Account for American MM/DD/YEAR, and inhibit <DIR> listings
# 20061219 - Can NOT use just $0 to get script name, since when directly invoke from
# a command prompt, it becomes C:\GTools\Perl\dirbydate.pl, so added some regex to
# massage the name, and just get the perl script name ... if a DRIVE included /^\w{1}:\\.*/
# AND, to enable it to FIND the logfile.pl, add unshift(@INC, 'C:/GTools/perl');
# OR this can be use lib '/Users/User/perl-lib';, or perl -MC:/GTools/perl -e dirbydate.pl
# and added a $evenspace option ...
dirbysize.pl
# AIM: Read a file output from the DIR command, and order the files in SIZE
# order ... drop out the pure <DIR> entries ...
# 15/09/2011 - Limit file name length to say 32 chars, and exit is no input
# 2010/03/28 - option to omit CVS/svn/git directories
# 2/13/2009 - Add delete (unlink) of log file at end, and skip if <DIR> is 3[2] or 4th[3] entry...
# 20061219 - Can NOT use just $0 to get script name, since when directly invoke from
# a command prompt, it becomes C:\GTools\Perl\dirbydate.pl, so added some regex to
# massage the name, and just get the perl script name ... if a DRIVE included /^\w{1}:\\.*/
# AND, to enable it to FIND the logfile.pl, add unshift(@INC, 'C:/GTools/perl');
# OR this can be use lib '/Users/User/perl-lib';, or perl -MC:/GTools/perl -e dirbydate.pl
# and added a $evenspace option ...
# geoff mclane - 28 March, 2007 - geoffmclane.com - based on dirbydate.pl
dircompact.pl
dirdate-old.pl
# AIM: Scan given directory, and list the latest, in date order
dirdate-old2.pl
dirdate.pl
direct.pl
# AIM: Given a lat lon position in degrees, an azimuth (degs), and distance (Km), give end point
# 08/09/2011 geoff mclane http://geoffair.net/mperl
dirg.pl
dirg2.pl
# AIM: Scan a directory, and suggest CD-ROM write
# limits ... fill CD-ROM to below ORANGE(warn) level
# by skipping FOLDER that put it OVER this limit.
# Present limit = 700MB CD-ROM assumed, so
# LIMIT set to 650MB ...
dirg3.pl
# AIM: Scan a directory, and suggest CD-ROM write
# limits ... fill CD-ROM to below ORANGE(warn) level
# by skipping FOLDER that put it OVER this limit.
# Present limit = 700MB CD-ROM assumed, so
# LIMIT set to 650MB ...
# sort per FOLDER size
# add oldest/youngest columns
# adjust to sector sizing
# Three examples
# CD1 - 547 files, 8 dirs, 24 folders, total 647,451,959 bytes - 618MB, 316,625 sectors
# CD2 - 588 files, 9 dirs, 27 folders, total 617,984,758 bytes - 590MB, 302,262 sectors
# CD3 - 416 files, 5 dirs, 15 folders, total 446,700,056 bytes - 427MB, 218,623 sectors
dirlist.pl
# AIM: Given a root directory, scan recursively and list directories found
# Exclude REPO directories by default. -a to include
# Exclude directories with no files.
# 08/08/2013 geoff mclane http://geoffair.net/mperl
dirmin.pl
# AIM: Read a dir > file file, and trim to minimum...
# 13/12/2011 - Added -o <file> to output to a file.
# 15/10/2010 geoff mclane http://geoffair.net/mperl
dirrel.pl
# AIM: Given a file name, get the relative directory of the file, if found
dirs.pl
dirsizes.pl
# AIM: Given a PATH, show the directories existing, and the approx. size of each
# including the number of files found
# 1/2/2009 - Minor fix of file count ($fc), especially when no subdirectories.
# 20/12/2008 - Added an -x=excludes parameters
# 20/11/2008 geoff mclane http://geoffair.net/mperl
# ###############################################################################
dirsizes02.pl
# AIM: Given a PATH, show the directories existing, and the approx. size of each
# including the number of files found
# 1/2/2009 - Minor fix of file count ($fc), especially when no subdirectories.
# 20/12/2008 - Added an -x=excludes parameters
# 20/11/2008 geoff mclane http://geoffair.net/mperl
# ###############################################################################
dirsizes03.pl
# AIM: Given a PATH, show the directories existing, and the approx. size of each
# including the number of files found
# 27/12/2011 - Minor FIX20111227 fixes - ignore 'System Volume Information', and ret 5 elements on fail
# 13/07/2010 - invert the output
# 01/07/2010 - add adjusted size, based on block size of 4096 - closer approx of
# space required on disk system that uses 4096 bytes as BLOCK size.
# 1/2/2009 - Minor fix of file count ($fc), especially when no subdirectories.
# 20/12/2008 - Added an -x=excludes parameters
# 20/11/2008 geoff mclane http://geoffair.net/mperl
# ###############################################################################
distance.pl
# AIM: Use perl trib function for distance London to Tokyo...
# from : http://perldoc.perl.org/Math/Trig.html
distance02.pl
# AIM: Use perl trig function for distance London to Tokyo...
# from : http://perldoc.perl.org/Math/Trig.html
# previous disptance.pl, with no use of SIMGEAR
# 17/12/2013 - Give precise info, unless verbosity raised
# 08/09/2011 - Minor adjustment - when -v2 output SG_Head in FULL - see possible error in az2!!!
# And -i <NUM> option, to output a list of points inbetween
# 06/08/2011 - Add -s speed in knots, default = 100 kt, and FIX inadvertent lat,lon reversal ;=))
# 26/02/2011 - Improved Distance: display
# 18/12/2010 - Fix heading from reverse track to heading (true)...
# 05/12/2010 - 01/12/2010 - Allow two comma separated pairs of input
# 20/11/2010 geoff mclane http://geoffair.net/mperl
dms2ll.pl
# AIM: To accept an input DEGREES MINUTES (SECONDS DECIMAL) [NSEW]
# and convert to a single decimal degrees ... 47 28 0 N
# 28/03/2014 - some improvements
# 13/03/2014 - some more improvements BUT STILL VERY UGLY ;=((
# 24/09/2013 - some improvements
# 21/07/2011 - Fix bug when entered
# 12/11/2010 - Attempt to reconstitute the same FORM
# 20061206 - Later added conversion back to DEG MIN SECS as a check ...
# Mt Everest 27 59 17 N = 27.9880555555556 - 86 55 31 E = 86.9252777777778 = N27E086.hgt
doupload.pl
download.pl
# AIM: Download a file from the web
# that is get a url - get url - fetch url - download url
# if it is a binary file, then this will download that binary,
# however if say a PHP or ASP, then only the HTML output will be received.
# 01/08/2008 geoff mclane http://geoffair.net/mperl
downloadut.pl
downloadut02.pl
# AIM: To download a YouTube video
# NOTE: THIS NO LONGER WORKS DUE TO MANY CHANGES IN THE YOUTUBE CONTENTS PAGE!!!
dsp2cfg.pl
# AIM: Read a specific DSP file, and build an am2dsp CONFIG file
# 21/04/2007 - geoff mclane - http:\\geoffmclane.com
dswlist.pl
# AIM: Given a MSVC6 DSW files, show the LIST of DSP files it references
# or given a FOLDER, search for ALL .DSW files, and show .DSP list.
# 01/06/2012 - Fixfor 'SUB' should be 'SUBTRACT'
# 29/05/2012 - Output a cmake list of sources found
# 20090913 - add command line parsing, and make it more conform to scan of vcproj
# substitution variables
# -NEW_PROJECT_NAME-" = name of the project
# -NEW_OUTD_(REL|DBG)- = PROP Output_Dir ????
# -NEW_INTER_(REL|DBG)- = PROP Intermediate_Dir ????
# ADD CPP with
# -NEW_RT_(REL|DBG)- = RUNTIME, like /MT /MD, /MTd, etc
# -NEW_INCS_(REL|DBG)- = INCLUDE DIRECTORIES, like /I ".."
# -NEW_DEFS_(REL|DBG)- = DEFINES, like /D "FGFS"
# ADD LINK32 (for console, app, DLL) with
# -NEW_LIBS_(REL|DBG)- = Additional libraries for the link
# -NEW_OUT_(REL|DBG)- = link output, like /out:"StaticRelease\libpng.lib
# -NEW_POST_(REL|DBG)- = POST build - description and commands, TAB separated
# ADD LIB32 (for static library) with
# -NEW_OUT_(REL|DBG)- = OUTPUT static library
# 22/04/2007 - geoff mclane - http://geoffmclane.com/mperl/samples/index.htm
dvdsizes.pl
# AIM: Scan a directory, and suggest DVD write
# limits ... fill DVD to below ORANGE(warn) level
# by skipping FOLDER that put it OVER this limit.
# Present limit = 4.7GB DVD assumed, so
# LIMIT set to 4.5GB ... sort per FOLDER size
# add oldest/youngest columns # adjust to sector sizing
# Three examples
# 2010/04/17 - point out indivual files GREATER THAN ONE DVD SIZE
# 2010/01/14 - Minor adjustments
# Original: 22/07/2008 dirg3.pl for 700MB, but now changed to dvdsizes.pl...
# 30/10/2009 geoff mclane http://geoffair.net/mperl
editgroup.pl
# AIM: Read a GROUP fo files in a FOLDER, and edit each one by one ...
# 09/03/2008 - geoff mclane - http://geoffair.net/mperl/samples
elapsed.pl
# AIM: Take two time parameters, like 14:21:03.48 14:23:36.65,
# and display the difference ...
# 17/11/2009 - If negative, assume next day. Not accurate, but better
# 15/05/2007 - geoff mclane - http://geoffmclane.com/mperl.index.htm
encode01.pl
end.pl
end02.pl
env-cgi.pl
epoch2date.pl
# AIM: Convert unix epoch seconds to date...
# 15/12/2013 - Show offset of 'local' from UTC
# 18/03/2013 geoff mclane http://geoffair.net/mperl
exefixcmake.pl
# AIM: Given a single CMakeLists.txt, or a path to search for CMakeLists.txt, read in
# and make sure for every 'add_executable( name ... )' there also exists a
# set_target_properties( name PROPERTIES DEBUG_POSTFIX d ), put in if(WIN32)
# 18/04/2014 - add a -d --dry-run to show which files will be changed, and change to if(MSVC)
# 21/09/2013 - attempt to exactly retain the file format
# 02/06/2013 - Process ALL CMakeLists.txt in the set
# 23/03/2013 - Enhance UI
# if added... and if -w, backup file and write new...
extractflts.pl
# AIM: VERY SPECIFIC - extract a set of transactions from a database dump
extractwords.pl
# AIM: read a file, and extract the word within ...
# 12/01/2008 - geoff mclane - http://geoffair.net/mperl
factorial.pl
# AIM: Take an input of an integer, and show the factorial of that number.
#
fav-01.pl
# AIM - To list the file in my 'Favorite' folder ...
# 10 Nov, 2005 - geoff mclane - http://geoffmclane.com
# 03 March, 2007 - Added output to LOG FILE ...
fav-02.pl
fav-03.pl
# AIM: To read the Internet Favorites, and produce
# a HTML document, with links and description
# 2005.11.12 - works ok - geoff mclane
# update 2006.06.28 - weed out (a) duplicates (not done) and (b) local references
# Added a MAXIMUM width, so the table approximately 'fits' a 1024 wide screen
# change to using '<base target="_blank">'
#
fav-04.pl
# AIM: To read the Internet Favorites, and produce
# a HTML document, with links and description
# 2006.07.11 - switch link column, and add (B) broken, from c:\HOMEPAGE\Broken02.htm
# update 2006.06.28 - weed out local references
# Added a MAXIMUM width, so the table approximately 'fits' a 1024 wide screen
# change to using '<base target="_blank">'
# 2005.11.12 - works ok - geoff mclane
#
fav-04b.pl
# AIM: Load broken HTML report from front page ...
fav-05.pl
# AIM: To read the Internet Favorites, and produce
# a HTML document, with links and description
#
# 23/08/2007 - into new 'format', and some updates using Tidy to 'fix' text ...
# added date table, if $chkip, check the IP can be resolved, mark <b>(B)</b> if not.
# if $chkpage, download the page, and mark <b> if this fails.
#
# 2006.07.11 - switch link column, and add (B) broken, from c:\HOMEPAGE\Broken02.htm
# update 2006.06.28 - weed out local references
# Added a MAXIMUM width, so the table approximately 'fits' a 1024 wide screen
# change to using '<base target="_blank">'
#
# 2005.11.12 - works ok - geoff mclane - geoffair.net/favorites.htm
#
favfind.pl
# AIM: Read Favorites folder, and show a URL on find ...
# 16/02/2008 - Geoff McLane - http://geoffair.net/mperl
fg-ac.pl
# AIM: Given a FG data directory, enumerate the AIRCRAFT found
# 05/12/2010 - Update - move good functions to a 'lib_xml.pl'
# 2010-01-09 - initial cut - geoff - bugs: report@geoffair.info
#
#<PropertyList>
# <sim>
# <flight-model>yasim</flight-model>
# <status>alpha</status>
# <author>Lee Elliott</author>
# <aero>MiG-15bis-yasim</aero>
# other things...
#BEGIN {
# @INC = qw(/etc/perl /usr/local/lib/perl5/site_perl/5.10.1 /usr/local/lib/perl5/5.10.1 /usr/lib/perl5 /usr/share/perl5 #/usr/local/share/perl/5.8.8 /usr/lib/perl/5.8 /home/geoff/bin);
#}
fg01.pl
fg_coms.pl
# AIM: Get the current COM frequencies
fg_f14b.pl
# AIM: Add auto pilot to f14b - first attempt
# 24/09/2011 geoff mclane http://geoffair.net/mperl
fg_getelev.pl
fg_httpd.pl
# AIM: Given a HOST and a PORT, query the property tree
fg_io_xml.pl
# AIM: View the contents of a FlightGear IO XML file
# 15/04/2011 geoff mclane http://geoffair.net/mperl
fg_menu_xml.pl
# AIM: View the contents of a FlightGear IO XML file
# 15/04/2011 geoff mclane http://geoffair.net/mperl
fg_pattern.pl
# AIM: Fly a pattern supplied in a file...
fg_runways.pl
# AIM: Read the xml threshold files
# 08/04/2013 geoff mclane http://geoffair.net/mperl
fg_signs.pl
fg_signs_convert.pl
# AIM:
fg_signs_test.pl
# AIM: Just TESTING parts of the original 'signs' perl script
# 12/12/2008 geoff mclane http://geoffair.net/mperl
fg_telnet.pl
# AIM: To RUN FlightGear, and get/send information to it using TELNET
# With much thanks to Franz Melchior for the 'signs' perl script,
# on which this is based.
#
# Note, although Term::ReadKey is used to CHECK for any keyboard input,
# and the main_loop() is terminated on an ESC keyboard input, the process
# will NOT exit, due to the nature of fork() and exec() as implemented in WIN32
# The secondary process of fork() will WAIT until exec(FG) exits, and at present it appears
# sending the command "quit" is ignored by FG - found sending 'run exit' worked ;=))
# 10/12/2010 Review - Updated to FG 2.0 (C:\FG\28) - Showed a/c position...
# 13/12/2008 geoff mclane http://geoffair.net/mperl
fg_telnet02.pl
# AIM: To RUN FlightGear, and get/send information to it using TELNET
# With much thanks to Franz Melchior for the 'signs' perl script,
# on which this is based.
#
# 19/04/2011 - Switched to this version 02, which no longer 'runs' the fg
# EXE, and removed the ANSI coloring attempt!
#
# Note, although Term::ReadKey is used to CHECK for any keyboard input,
# and the main_loop() is terminated on an ESC keyboard input, the process
# will NOT exit, due to the nature of fork() and exec() as implemented in WIN32
# The secondary process of fork() will WAIT until exec(FG) exits, and at present it appears
# sending the command "quit" is ignored by FG - found sending 'run exit' worked ;=))
# 10/12/2010 Review - Updated to FG 2.0 (C:\FG\28) - Showed a/c position...
# 13/12/2008 geoff mclane http://geoffair.net/mperl
fg_test.pl
# AIM: Just a test module
# 24/09/2011 geoff mclane http://geoffair.net/mperl
fgam2dsp.pl
# AIM: Read Makefile.am set, and generate MSVC6 DSW/DSP files for the project.
# SPECIFICALLY geared towards SimGear and FlightGear - NOT GENERALISED!!!
# 19/09/2008 - geoff mclane - http://geoffair.net/fg/
fgamscan-ok.pl
# AIM: To scan makefile.am in FG/SG, and list builds and sources
# 02/10/2008 geoff mclane - http://geoffair.net/fg
# AIManager.hxx AIManager.cxx
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src
#noinst_LIBRARIES = libAircraft.a
#libAircraft_a_SOURCES = \
#noinst_LIBRARIES = libAirports.a
# from C:\FG\20\FlightGear\src\Airports\Makefile.am
#noinst_PROGRAMS = calc_loc
#libAirports_a_SOURCES = \
# apt_loader.cxx apt_loader.hxx \
#calc_loc_SOURCES = calc_loc.cxx
#calc_loc_LDADD = -lsgmath -lsgdebug -lsgmisc -lz $(base_LIBS)
# from C:\FG\20\FlightGear\src\FDM\Makefile.am
#if ENABLE_SP_FDM
#SP_DIR = SP
#else
#SP_DIR =
#endif
#SUBDIRS = JSBSim LaRCsim UIUCModel YASim \
# $(SP_DIR) ExternalNet ExternalPipe
#noinst_LIBRARIES = libFlight.a
# from C:\FG\20\FlightGear\src\FDM\JSBSim\Makefile.am
#SUBDIRS = initialization models input_output math
#noinst_LIBRARIES = libJSBSim.a
#libJSBSim_a_SOURCES = FGFDMExec.cpp FGJSBBase.cpp FGState.cpp JSBSim.cxx
#noinst_HEADERS = FGFDMExec.h FGJSBBase.h FGState.h JSBSim.hxx
#INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/src/FDM/JSBSim
# from C:\FG\20\FlightGear\src\FDM\LaRCsim\Makefile.am
#AIRCRAFT_MODEL = c172_aero.c c172_engine.c c172_gear.c c172_init.c \
#noinst_LIBRARIES = libLaRCsim.a
#libLaRCsim_a_SOURCES = \
# LaRCsim.cxx LaRCsim.hxx \
# $(AIRCRAFT_MODEL) \
# ls_interface.c ls_interface.h
# from C:\FG\20\FlightGear\src\FDM\YASim\Makefile.am
#SHARED_SOURCE_FILES = \
# Airplane.cpp Airplane.hpp \
#noinst_LIBRARIES = libYASim.a
#libYASim_a_SOURCES = YASim.cxx YASim.hxx FGGround.cpp FGGround.hpp $(SHARED_SOURCE_FILES)
#bin_PROGRAMS = yasim
#noinst_PROGRAMS = proptest
#yasim_SOURCES = yasim-test.cpp $(SHARED_SOURCE_FILES)
#yasim_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
#proptest_SOURCES = proptest.cpp $(SHARED_SOURCE_FILES)
#proptest_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
# from C:\FG\20\FlightGear\src\GUI\Makefile.am
#noinst_LIBRARIES = libGUI.a
#noinst_PROGRAMS = layout-test
#libGUI_a_SOURCES = \
# new_gui.cxx new_gui.hxx \
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src
#layout_test_SOURCES = layout-test.cxx
#layout_test_LDADD = libGUI.a \
# -lsgprops -lsgdebug -lsgstructure -lsgmisc -lsgxml \
# -lplibpw -lplibpu -lplibfnt -lplibul $(opengl_LIBS)
# from C:\FG\20\FlightGear\src\Input\Makefile.am
#AM_CXXFLAGS = -DPKGLIBDIR=\"$(pkgdatadir)\"
#noinst_LIBRARIES = libInput.a
#libInput_a_SOURCES = input.cxx input.hxx
#bin_PROGRAMS = js_demo fgjs
#js_demo_SOURCES = js_demo.cxx
#js_demo_LDADD = -lplibjs $(base_LIBS) $(joystick_LIBS) -lplibul
#fgjs_SOURCES = fgjs.cxx jsinput.cxx jsinput.h jssuper.cxx jssuper.h
#fgjs_LDADD = -lplibjs -lplibul $(base_LIBS) $(joystick_LIBS) \
# -lsgprops -lsgmisc -lsgio -lsgdebug -lsgstructure -lsgxml -lz
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/Main
# C:\FG\20\FlightGear\src\Main\Makefile.am
# *************************************************************
#EXTRA_DIST = 3dfx.sh runfgfs.in runfgfs.bat.in \
# fg_os_sdl.cxx fg_os.cxx fg_os_osgviewer.cxx fg_os.hxx
#MPLAYER_LIBS = $(top_builddir)/src/MultiPlayer/libMultiPlayer.a
#if ENABLE_SP_FDM
#SP_FDM_LIBS = $(top_builddir)/src/FDM/SP/libSPFDM.a
#else
#SP_FDM_LIBS =
#endif
#if WITH_THREADS
#THREAD_LIBS = -lsgthreads $(thread_LIBS)
#else
#THREAD_LIBS =
#endif
#GFX_COMMON = fg_os_common.cxx fg_os.hxx
#if USE_SDL
#GFX_CODE = fg_os_sdl.cxx $(GFX_COMMON)
#else
#if USE_GLUT
#GFX_CODE = fg_os.cxx $(GFX_COMMON)
#else
#GFX_CODE = fg_os_osgviewer.cxx $(GFX_COMMON)
#endif
#endif
#JSBSIM_LIBS = \
# $(top_builddir)/src/FDM/JSBSim/libJSBSim.a \
# $(top_builddir)/src/FDM/JSBSim/initialization/libInit.a \
#AM_CXXFLAGS = -DPKGLIBDIR=\"$(pkgdatadir)\"
#bin_PROGRAMS = fgfs metar
#noinst_SCRIPTS = runfgfs.bat runfgfs
#noinst_LIBRARIES = libMain.a
## bin_SCRIPTS = runfgfs
#libMain_a_SOURCES = \
# main.cxx main.hxx \
# $(GFX_CODE)
#fgfs_SOURCES = bootstrap.cxx
#fgfs_LDADD = \
# $(top_builddir)/src/Main/libMain.a \
# $(JSBSIM_LIBS) \
# $(SP_FDM_LIBS) \
# $(MPLAYER_LIBS) \
# -lsgroute -lsgsky -lsgsound -lsgephem -lsgmaterial -lsgtgdb -lsgmodel \
# -lplibpuaux -lplibpu -lplibfnt -lplibjs -lplibnet \
# $(OSG_LIBS) \
# $(THREAD_LIBS) \
# $(network_LIBS) \
# -lz \
# $(openal_LIBS)
#metar_SOURCES = metar_main.cxx
#metar_LDADD = \
# -lsgenvironment -lsgio -lsgbucket -lsgmisc -lsgstructure -lsgdebug \
# -lplibnet -lplibul $(network_LIBS) \
# -lz $(base_LIBS)
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/FDM/JSBSim
# C:\FG\20\FlightGear\src\Network\Makefile.am
# *************************************************************
#EXTRA_DIST = jpg-httpd.cxx jpg-httpd.hxx \
# multiplay.cxx multiplay.hxx
#noinst_LIBRARIES = libNetwork.a
#if ENABLE_JPEG_SERVER
#JPEG_SERVER = jpg-httpd.cxx jpg-httpd.hxx
#else
#JPEG_SERVER =
#endif
#MPLAYER_AS = multiplay.cxx multiplay.hxx
#libNetwork_a_SOURCES = \
# protocol.cxx protocol.hxx \
# $(JPEG_SERVER) \
# $(MPLAYER_AS) \
# generic.hxx generic.cxx
# ====================================================================
# eof - fgamscan.pl
fgamscan.pl
# AIM: To scan makefile.am in FG/SG, and list builds and sources
# 23/11/2008 - Add CHECK OF SOURCE LOCATION
# 22/11/2008 - seems to work ok ;=))
# 05/10/2008 - Part of a series of Perl scripts to compare and show changes
# in the build files of FlightGear and SimGear
# 02/10/2008 geoff mclane - http://geoffair.net/fg
# AIManager.hxx AIManager.cxx
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src
#noinst_LIBRARIES = libAircraft.a
#libAircraft_a_SOURCES = \
#noinst_LIBRARIES = libAirports.a
# from C:\FG\20\FlightGear\src\Airports\Makefile.am
#noinst_PROGRAMS = calc_loc
#libAirports_a_SOURCES = \
# apt_loader.cxx apt_loader.hxx \
#calc_loc_SOURCES = calc_loc.cxx
#calc_loc_LDADD = -lsgmath -lsgdebug -lsgmisc -lz $(base_LIBS)
# from C:\FG\20\FlightGear\src\FDM\Makefile.am
#if ENABLE_SP_FDM
#SP_DIR = SP
#else
#SP_DIR =
#endif
#SUBDIRS = JSBSim LaRCsim UIUCModel YASim \
# $(SP_DIR) ExternalNet ExternalPipe
#noinst_LIBRARIES = libFlight.a
# from C:\FG\20\FlightGear\src\FDM\JSBSim\Makefile.am
#SUBDIRS = initialization models input_output math
#noinst_LIBRARIES = libJSBSim.a
#libJSBSim_a_SOURCES = FGFDMExec.cpp FGJSBBase.cpp FGState.cpp JSBSim.cxx
#noinst_HEADERS = FGFDMExec.h FGJSBBase.h FGState.h JSBSim.hxx
#INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/src/FDM/JSBSim
# from C:\FG\20\FlightGear\src\FDM\LaRCsim\Makefile.am
#AIRCRAFT_MODEL = c172_aero.c c172_engine.c c172_gear.c c172_init.c \
#noinst_LIBRARIES = libLaRCsim.a
#libLaRCsim_a_SOURCES = \
# LaRCsim.cxx LaRCsim.hxx \
# $(AIRCRAFT_MODEL) \
# ls_interface.c ls_interface.h
# from C:\FG\20\FlightGear\src\FDM\YASim\Makefile.am
#SHARED_SOURCE_FILES = \
# Airplane.cpp Airplane.hpp \
#noinst_LIBRARIES = libYASim.a
#libYASim_a_SOURCES = YASim.cxx YASim.hxx FGGround.cpp FGGround.hpp $(SHARED_SOURCE_FILES)
#bin_PROGRAMS = yasim
#noinst_PROGRAMS = proptest
#yasim_SOURCES = yasim-test.cpp $(SHARED_SOURCE_FILES)
#yasim_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
#proptest_SOURCES = proptest.cpp $(SHARED_SOURCE_FILES)
#proptest_LDADD = -lsgxml -lsgprops -lsgdebug -lsgmisc -lsgstructure $(base_LIBS)
# from C:\FG\20\FlightGear\src\GUI\Makefile.am
#noinst_LIBRARIES = libGUI.a
#noinst_PROGRAMS = layout-test
#libGUI_a_SOURCES = \
# new_gui.cxx new_gui.hxx \
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src
#layout_test_SOURCES = layout-test.cxx
#layout_test_LDADD = libGUI.a \
# -lsgprops -lsgdebug -lsgstructure -lsgmisc -lsgxml \
# -lplibpw -lplibpu -lplibfnt -lplibul $(opengl_LIBS)
# from C:\FG\20\FlightGear\src\Input\Makefile.am
#AM_CXXFLAGS = -DPKGLIBDIR=\"$(pkgdatadir)\"
#noinst_LIBRARIES = libInput.a
#libInput_a_SOURCES = input.cxx input.hxx
#bin_PROGRAMS = js_demo fgjs
#js_demo_SOURCES = js_demo.cxx
#js_demo_LDADD = -lplibjs $(base_LIBS) $(joystick_LIBS) -lplibul
#fgjs_SOURCES = fgjs.cxx jsinput.cxx jsinput.h jssuper.cxx jssuper.h
#fgjs_LDADD = -lplibjs -lplibul $(base_LIBS) $(joystick_LIBS) \
# -lsgprops -lsgmisc -lsgio -lsgdebug -lsgstructure -lsgxml -lz
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/Main
# C:\FG\20\FlightGear\src\Main\Makefile.am
# *************************************************************
#EXTRA_DIST = 3dfx.sh runfgfs.in runfgfs.bat.in \
# fg_os_sdl.cxx fg_os.cxx fg_os_osgviewer.cxx fg_os.hxx
#MPLAYER_LIBS = $(top_builddir)/src/MultiPlayer/libMultiPlayer.a
#if ENABLE_SP_FDM
#SP_FDM_LIBS = $(top_builddir)/src/FDM/SP/libSPFDM.a
#else
#SP_FDM_LIBS =
#endif
#if WITH_THREADS
#THREAD_LIBS = -lsgthreads $(thread_LIBS)
#else
#THREAD_LIBS =
#endif
#GFX_COMMON = fg_os_common.cxx fg_os.hxx
#if USE_SDL
#GFX_CODE = fg_os_sdl.cxx $(GFX_COMMON)
#else
#if USE_GLUT
#GFX_CODE = fg_os.cxx $(GFX_COMMON)
#else
#GFX_CODE = fg_os_osgviewer.cxx $(GFX_COMMON)
#endif
#endif
#JSBSIM_LIBS = \
# $(top_builddir)/src/FDM/JSBSim/libJSBSim.a \
# $(top_builddir)/src/FDM/JSBSim/initialization/libInit.a \
#AM_CXXFLAGS = -DPKGLIBDIR=\"$(pkgdatadir)\"
#bin_PROGRAMS = fgfs metar
#noinst_SCRIPTS = runfgfs.bat runfgfs
#noinst_LIBRARIES = libMain.a
## bin_SCRIPTS = runfgfs
#libMain_a_SOURCES = \
# main.cxx main.hxx \
# $(GFX_CODE)
#fgfs_SOURCES = bootstrap.cxx
#fgfs_LDADD = \
# $(top_builddir)/src/Main/libMain.a \
# $(JSBSIM_LIBS) \
# $(SP_FDM_LIBS) \
# $(MPLAYER_LIBS) \
# -lsgroute -lsgsky -lsgsound -lsgephem -lsgmaterial -lsgtgdb -lsgmodel \
# -lplibpuaux -lplibpu -lplibfnt -lplibjs -lplibnet \
# $(OSG_LIBS) \
# $(THREAD_LIBS) \
# $(network_LIBS) \
# -lz \
# $(openal_LIBS)
#metar_SOURCES = metar_main.cxx
#metar_LDADD = \
# -lsgenvironment -lsgio -lsgbucket -lsgmisc -lsgstructure -lsgdebug \
# -lplibnet -lplibul $(network_LIBS) \
# -lz $(base_LIBS)
#INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/src -I$(top_srcdir)/src/FDM/JSBSim
# C:\FG\20\FlightGear\src\Network\Makefile.am
# *************************************************************
#EXTRA_DIST = jpg-httpd.cxx jpg-httpd.hxx \
# multiplay.cxx multiplay.hxx
#noinst_LIBRARIES = libNetwork.a
#if ENABLE_JPEG_SERVER
#JPEG_SERVER = jpg-httpd.cxx jpg-httpd.hxx
#else
#JPEG_SERVER =
#endif
#MPLAYER_AS = multiplay.cxx multiplay.hxx
#libNetwork_a_SOURCES = \
# protocol.cxx protocol.hxx \
# $(JPEG_SERVER) \
# $(MPLAYER_AS) \
# generic.hxx generic.cxx
# ====================================================================
# eof - fgamscan.pl
fgapt01.pl
fgchkaircraft.pl
# AIM: Check 'data/Aircraft' folder for valid aircraft ...
# 17/03/2013 - Output to CSV, or json
# 22/12/2012 - Output the MAXIMUM aircraft name
# 25/06/2012 - Review, and UI improvements
# 07/12/2008 - added 'status'
# 11/7/2008 - geoff mclane - http://geoffair.net/fg
fgcmp2dsps.pl
# AIM: Comparison of TWO DSP files - show different SOURCE files only ...
# 04/10/2009 - SEE cmp2dsps.pl FOR LATEST VERSION!!! Includes headers in compare
# 25/11/2008 - some minor additions to output
# 26/10/2008 - added parse_args() for INPUT files
# 13/08/2008 - geoff mclane - http://geoffair.net/mperl
# Compares SOURCE lists, and compares the config parameters ...
fgdspscan.pl
fgfixfn.pl
# AIM: VERY SPECIFIC - read file, and fix footnotes - did a REASONABLE job, but needed some manual touchups
# 2010/04/06 - geoff mclane - http://geoffair.net/mperl/
fggenmenu.pl
# AIM: VERY SPECIFIC - Take the internal menu javascript, and convert to HTML
# 2010/04/12 - some little fixes...
# 2010/03/24 - geoff mclane - http://geoffair.net/mperl/
fgmerge.pl
# AIM: SPECIALISED: Take two files - NEW and OLD, and merge the content
fgms-alog.pl
# AIM: Given a fgms.log, read, analyse, and show results
# 01/06/2014 geoff mclane http://geoffair.net/mperl
fgms-log-02.pl
# AIM: Read a fgms log, and produce tracker information...
# 28/07/2012 - Some updates to run in fgx.ch
# 28/06/2012 - Initial cut
fgms-log.pl
# AIM: Read a fgms log, and produce tracker information...
# 28/06/2012 - Initial cut
fgscenery.pl
# AIM: To check and advise what FG scenery is install in a given folder - 2007/03/20 - geoff.
# Scenery / Objects and Terrain
# the enumeration of Terrain (and Objects)
# each base Terrain folder, like say e000n40, contains 10x10 degrees of data
# So the base of e000n40 contains
# -----------------------------
# e000n40, e000n41, ... e000n49
# e001n40, e001n41, ... e000n49
# ...
# e009n40, e009n41, ... e001n49
# -----------------------------
# Then each sub-folder is further borken down into tiles (or buckets)
# so scenery\Terrain\e000n40\e000n40
# contains tiles 2957440.btg.gz, 2957448.btg.gz, ..., 2957499.btg.gz
# with corresponding .stg files ...
# from tileentry.hxx
#// ssg tree structure for this tile is as follows:
#// osg::Group(scene)
#// - osg::Group(terrain)
#// - SGPlacementTransform(tile)
#// - osg::LOD(tile)
#// - ssgEntity(tile)
#// - kid1(fan)
#// - kid2(fan)
#// ...
#// - kidn(fan)
# this service, from newbucket.cxx converts a tile index to lat,lon,x,y
#// Parse a unique scenery tile index and find the lon, lat, x, and y
#SGBucket::SGBucket(const long int bindex) {
# long int index = bindex;
# lon = index >> 14;
# index -= lon << 14;
# lon -= 180;
# lat = index >> 6;
# index -= lat << 6;
# lat -= 90;
# y = index >> 3;
# index -= y << 3;
# x = index;
#}
fgscenery02.pl
# AIM: Given a fg scenery directory, search and report what scenery is available...
# Note: This is a complete REWRITE of fgscenery.pl
# 29/03/2011 geoff mclane http://geoffair.net/mperl
fgsetfile.pl
# AIM: Process a FG *-set.xml file
# 07/05/2013 geoff mclane http://geoffair.net/mperl
fgshowmaterials.pl
# AIM: Very specific show of 'materials' defined in FG data 'materials.xml'
# 27/02/2009 geoff mclane http://geoffair.net/mperl
fgsln2dsw02.pl
# AIM: Read solution file (SLN), and extract projects,
# write appropriate DSP file, and finally write DSW file.
# 30/10/2008 geoff mclane - http://geoffair.net/fg
fgtelnet.pl
# AIM: Get a TELNET connection to fgfs on host port
fgvc2dsp02.pl
# AIM: Scan a single VCPROJ file, and extract information
# geoff mclane - http://geoffair.net/fg
filecount.pl
filelist.pl
# AIM: Write a complete list of files, recursively in a directory, to be used by say a zip
# utility. It excludes .svn, .git, and CVS directories from the list,
# and excludes such things as *.obj, etc
# 2009/10/13 - geoff mclane - http://geoffair.net/mperl/
find-incs.pl
find_dirs.pl
find_in_inctrail.pl
# AIM: Given an in C/C++ file, check for #include "file" and #include <file>
# statements, and follow the trail, listing ALL included files, included ...
# And SEARCH each for a $find text, and advise ...
# 30/05/2012 - Another attempt to improve UI
# 17/03/2012 - some fixes
# 20/07/2011 - add some enhancement
# 02/08/2008 geoff mclane http://geoffair.net/mperl
# 2009-07-08 - minor adjustment, to know who included who...
# 2009/09/16 - massive FIXES - now looks GOOD
###################################################################
findap.pl
# AIM: Read FlightGear apt.dat, and list closest airports to a given
# lat and lon ... output $max_cnt in closest order ...
findap02.pl
# AIM: Read FlightGear apt.dat, and find an airport given the name,
# 12/11/2010-11/11/2010 - check out... reduce noise...
# 09/11/2010 - Some UI enhancements... Skip NAV version line, ... FIX20101109
# 17/08/2010 - Fix for windows command -latlon=5,10 becomes -latlon 5 10
# 13/02/2010 - Change to using C:\FGCVS\FLightGear\data files...
# 18/11/2009 - Added Bucket2.pm, to show bucket details - OOPS, would NOT work
# 18/12/2008 - Used tested include 'fg_wsg84.pl' for distance services
# 12/12/2008 - Switch to using DISTANCE, rather than DEGREES, for searching
# for close NAVAIDS ... Add a -range=nn Kilometers
# 19/11/2008 - Added $tryharder, when NO navaid found
# updated 20070526 fixes to run from command line
# Updated 20070405 to parse inputs, added help,
# 20061127 - Use gz (gzip) files directly from $FG_ROOT
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20061127
findextent.pl
# AIM: Search for files of a given extension in a directory, recursive by default
# 17/03/2013 - Rename more to what it does - find files with a specific EXTENSION
# 09/12/2011 geoff mclane http://geoffair.net/mperl
findfile.pl
# AIM: Given a file name, and a root directory, search for the file, and out FULL PATH if found
# If no root directory given, use current work directory
findfiles.pl
# AIM: Given a search directory, and a file name, or set of files, find then
# and report their locations in the directory structure.
findfix.pl
# AIM: Given the name of a fix, search for it...
# 11/02/2014 geoff mclane http://geoffair.net/mperl
findfunc.pl
# AIM: Search C/C++ files to find a function...
# 21/10/2010 geoff mclane http://geoffair.net/mperl
findinc.pl
# AIM: Scan all 'system' headers to find input string ...
# 17/05/2012 - delete (unlink) batch and text when done
# 03/03/2012 - Add -exact, to match EXACTLY.
# 11/09/2011 - Exit if no FIND given, and added version, add $verbosity, and quieten output
# 12/11/2009 - Minor enhancement - show number of file containing find
# 2009-07-09 - minor enhancement to show ALL include files searched
findinfile.pl
# AIM: Find a string in a file, using perl regex
# 07/07/2013 - Improve UI
# 31/05/2011 geoff mclane http://geoffair.net/mperl
findinlib.pl
# AIM: Uses 'Dump4' utility so is quite specialized
# Find a 'function' in a library, or set of libraries
# 01/04/2011 - Unless verbosity increased, do NOT show __real@ nor ?? items...
# It sould be nice if something could be done about name mangling or name decoration...
# from : http://en.wikipedia.org/wiki/Name_mangling
# Can be split into 2 type - that for C, and another for C++
# Simple C decoration - 3 cases
# int _cdecl f (int x) { return 0; } - normal default so even without [_cdecl]
# int _stdcall g (int y) { return 0; }
# int _fastcall h (int z) { return 0; }
# Decorations
# _f # _g@4 # @h@4
# Name mangling in C++ - NO STANDARD - each compiler does its own thing ;=(( Here MSVC C++ only
# void h(int) void h(int, char) void h(void)
# ?h@@YAXH@Z ?h@@YAXHD@Z ?h@@YAXXZ
# from : http://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B_Name_Mangling
# All mangled C++ names start with ? (question mark).
# The structure of mangled names looks like this: Prefix ? - Optional: Prefix @? - Qualified name - Type
# Qualification is written in reversed order.
# For example myclass::nested::something becomes something@nested@myclass@@.
# Name with Template Arguments - Name fragments starting with ?$ have template arguments
# For example, we assume the following prototype.
# void __cdecl abc<def<int>,void*>::xyz(void);
# The name of this function can be obtained by the following process:
# abc<def<int>,void*>::xyz - order
# xyz@ abc<def<int>,void*> @ - order reversed
# xyz@ ?$abc@ def<int> void* @ @
# xyz@ ?$abc@ V def<int> @ PAX @ @
# xyz@ ?$abc@ V ?$def@H@ @ PAX @ @
# xyz@?$abc@V?$def@H@@PAX@@
# So the mangled name for this function is
# ?xyz@?$abc@V?$def@H@@PAX@@YAXXZ.
# Nested Name
# For example, ?nested@??func@@YAXXZ@4HA means variable ?nested@@4HA(int nested)
# inside ?func@@YAXXZ(void __cdecl func(void)). The UnDecorateSymbolName function returns
# int 'void __cdecl func(void)'::nested for this input.
findinpath.pl
# AIM: Given an input file, find it in the PATH enviroment variable ...
# 04/05/2013 - Allow additional paths to be searched
# 19/10/2011 - show the number of the PATH found in if 1 and exact
# 14/07/2010 - checkout, and add 'potential' finds, like '*item*'...
# 05/05/2008 - geoff mclane - http://geoffair.net/mperl
findmarray.pl
# AIM: VERY SPECIFIC - In a folder, open C/C++ files, and search for multiple arrays array[a][b]...
# 2009/09/26 - geoff mclane - http://geoffair.net/mperl/
findmodel.pl
# AIM: VERY SPECIFIC - Read model file, and search fgdata for *.ac model file
findnavs.pl
# AIM: Given a lat,lon, search for navaids nearby...
# 14/02/2014 - Add -i input file - line separated command
# 12/02/2014 - Also search by NAME
# 13/01/2013 geoff mclane http://geoffair.net/mperl
findnumber.pl
# AIM: Given a file to search, an da number to search for, see if the number exists on
# and line
findpath.pl
# AIM: Given an input file, find and output the path to that file
# If not directory given, then use current directory
# 22/12/2013 geoff mclane http://geoffair.net/mperl
fixboostlist.pl
# AIM: VERY SPECIFIC
fixcasts.pl
# AIM: An attempt at automating 'cast' fixing
# 9/5/2009 - geoff mclane - http://geoffair.net/mperl/
fixcmakecache.pl
# AIM: VERY SPECIFIC - Read CMakeCache.txt, and adjust paths
fixdiff.pl
fixdsp01.pl
# AIM: Very specific changes to be made to a set of DSP files
# In this case, change library output back to normal location - that
# is remove the out:"..\..\lib" from the LIB32 lines, AND
# change the LINK32 line out:"..\..\bin\<something> to
# out:"bin\<something>, and write a NEW amended DSP
# if $outtmpfile is 0 (after renaming the current to OLD/BAK)
# else output a temp.Nnamed>.dsp locally otherwise.
# 25/02/2009 - geoff mclane - http://geoffair.net/mperl
fixdsp02.pl
# AIM: Very specific changes to be made to a set of DSP files
# In this case, add 2 defines to the compile lines
# 1. Ensure /D "HAVE_CONFIG_H" is there
# 2. Add /D "NOMINMAX", and
# 3. Add /D "_CRT_SECURE_NO_WARNINGS"
#
# if $outtmpfile is 0 (after renaming the current to OLD/BAK)
# else output a temp.Nnamed>.dsp locally otherwise.
# 25/02/2009 - geoff mclane - http://geoffair.net/mperl
fixdspfiles.pl
# AIM: VERY SPECIFIC - Modify a set of DSP files
fixfile.pl
# AIM: VERY SPECIFIC - Fix a file
fixrelpath.pl
# AIM: Read a set of VCPROJ files, from a SOLUTION file, or FOLDER,
# and AMEND the relative path, and write back the file ...
# 04/10/2007 geoff mclane - http://geoffair.net/mperl
########################################################################
fixsrc.pl
# AIM: Quite specific - read in file with list of sources, find source,
# and fax the list
# 03/08/2012 - initial cut
fixtidydict.pl
# AIM: HIGHLY SPECIALISED: Just to modify tidy attrdict.c
fixtitle.pl
# AIM: specialized perl, to read a particular XML file,
# extract the file name, and make it into a title, and write results.
# 25/08/2007 geoff mclane - geoffair.net/mperl/
fixwmdiag.pl
# AIM: VERY SPECIFIC FIX FOR wmdiag.cpp file
# 26/07/2010 geoff mclane http://geoffair.net/mperl
foo.pl
foobar.pl
fork.pl
fork02.pl
# AIM: Some experiments with fork()
# 24/09/2011 geoff mclane http://geoffair.net/mperl
form.pl
fplist.pl
# AIM: Read an input DIRECTORY, and output a LIST of FRONTPAGE directories
# to be EXCLUDED ...
# 11/04/2007 - geoff mclane - geoffair.com/mperl
ft2m.pl
# AIM: Input feet and inches and output meters
ftpget01.pl
# AIM: To check and test the Perl FTP interface ... 2006.06.27 - geoff.
# ftpfetch01.pl
gcc2msvc.pl
# AIM: Rought attempt to convert gcc structure initialization to
# something agreeable to MSVC
# NO! ABANDONED ;=(( TOO HARD TO WRITE A C/C++ PARSER
# ===================================================
# 25/03/2013 geoff mclane http://geoffair.net/mperl
gen-defines.pl
# AIM: VERY SPECIAL
gen-servers.pl
gen_phonebook.pl
genalt.pl
# AIM - scan HTML file, and ADD an alt='$fn image', if none found
genalt02.pl
# AIM: Complete re-write of genalt.pl
# 2010/03/20 - geoff mclane - http://geoffair.net/mperl/
genascii.pl
gencast.pl
# AIM: Take a line, and convert to MSVC with cast
# Handles several type of lines, but NOT ALL!
# 9/5/2009 - geoff mclane - http://geoffair.net/mperl/
genclist.pl
# AIM: Convert a set of #define ABC, into a structure
# 28/09/2007 - geoff mclane - http://geoffair.net/mperl
gencmake.pl
# AIM: Given an input folder, roughly generate a CMakeLists.txt from what is seem
# 18/06/2014 - Small enhancements
# 31/07/2012 - Added *.rc files to sources
# 09/07/2012 - Initial cut
genconfig.pl
# AIM: Read a directory, and generate config info
# 04/12/2012 - Add -t tile-out, -m map-out, -l layer-out - separate outputs
# 09/11/2012 - Initial cut
gencxxmods.pl
# AIM: Given the base name, generate cxx/hxx modules accordingly
# 07/05/2014 - fix module name
# 06/05/2014 geoff mclane http://geoffair.net/mperl
gendbglist.pl
# AIM: VERY SPECIFIC - generate a perl debug stg block
# 2009/10/23 - geoff mclane - http://geoffair.net/mperl/
gendef.pl
# AIM: Generate a DLL DEF file from a simple list of functions
# 23/10/2010 geoff mclane http://geoffair.net/mperl
gendotlist.pl
# AIM: Given an input folder, scan it recursively, listing all the files
# that beign with a DOT ...
# 15/07/2007 - geoff mclane
gendowntable.pl
# AIM: Given a set of file, generate a table for download
# 24/04/2010 geoff mclane http://geoffair.net/mperl
gendowntable02.pl
# AIM: Given a set of zip files, prepare a somewhat standard table with
# Date Zip Size MD5 columns.
# 24/04/2011 - Only process ZIP file...
# 21/08/2010 - Add <b> to link, and allow wild cards, like *.zip, *.gz...
# 16/08/2010 - Make it simple - use 'gendowntable .' to do the current directory
# 14/08/2010 geoff mclane http://geoffair.net/mperl
genfileindex.pl
# AIM: Scan all the files in a FOLDER, and generate a HTML index file,
# containing links to all the files in the FOLDER, both in alphabetic order,
# and in date order, showing the date, name and size of the file.
# 26/12/2011 - Prepare to also run in Ubuntu
# 21/07/2010 - checked and fixed - put in DATE order - seems best
# 02/02/2010 - update
# 21/08/2007 - use ImageMagick 'indentify.exe' (now installed) to get the IMAGE sizes,
# thus improving the bottom image display ...
#
# 28/06/2007 geoff mclane - geoffair.net/mperl
#
genfolderindex.pl
# AIM: Scan all the files in a FOLDER, and generate a HTML index file,
# containing links to all the files in the FOLDER, both in alphabetic order,
# and in date order, showing the date, name and size of the file.
# 28/06/2007 geoff mclane - geoffair.net/mperl
#
genhtmindex.pl
# AIM: Given a BASE folder, seek all HTML files, and build
# an 'index' table, as HTML ...
# Commands: in-folder [-out out-file]
genhtmlindex.pl
# AIM: Given a folder name, seek ALL .htm[l] docs and generate an index.html to jump to each
# Maybe extract the <title> from each to fill out the index table
# 05/11/2013 geoff mclane http://geoffair.net/mperl
genimgindex.pl
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
# Commands: in-folder [-out out-file]
# 06/03/2014 - Add -t <num> to set target width, and -b bare table, suitable for printing
#
# *********************************************************************************
# BUT, is really QUITE SPECIALIZED to generate my 'fg' folder 'Image Index' update,
# in that the @excluded_imgs, and %excluded_html are mainly for that folder,
# and the 'links' are to 'index.htm', #top or #end ... and other things, like
# the CSS include, and javascript include ...
# *********************************************************************************
# 22/12/2011 - Do not do a 'table' is just 1 image
# 08/05/2011 - Fix -out file, and fix image paths
# 08/11/2010 - checkout on FSWeekend pics
# 08/12/2008 - externalise im_get_image_size(file_name), adding imgsize.pl requires
# 19/11/2008 - modified to produce say fg/images index
# 27/09/2007 - some features
# $add_dir and $add_siz to ADD a directory and size columns
# and using ImageMagick identify (if installed) to get image dimensions
# 15/03/2008 - add mutiple columns, especially if image constrained to small thumbnail size
# ===========================================================================================
# AIM: Given a folder, search for ALL image files
#
# genimgindex.pl - (see earlier simpe imgindex.pl)
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
#
# imgindex.pl
# AIM: To read a FOLDER, finding all image files, and preparing a simple table index
#
# getimgsize.pl
# AIM: Given a folder, use Imagemagick identify to get the image sizes
# and write a tempjs.js with the image sizes in an array
#
# imagemagic.pl
# AIM: Test of ImageMagic installation - use Image::Magick;
#
# imgalt02.pl
# AIM: To extract the <img alt="..." atribute of each image,
# in all (both) English and French version ...
# Read a JetPhoto, fix each entry in the
# studio.plist XML file ... each has to be inserted as
# <key>Description</key>
# <string>English description ... French Description</string>
# and save the new studio.plist file ...
#
# imgsize.pl - MODULE
# AIM: Use external imagemagick 'identify.exe' to get an image SIZE geometry
# Services: im_get_image_size( file_name ); returns geometry nnnnxnnnn
# im_get_image_width( geometry ); returns WIDTH
# im_get_image_height( geometry ); returns HEIGHT
#
# imgratio.pl
# AIM: Play with MATH, to re-size an image, keeping the aspect ratio ...
#
# eof - genimgindex.pl
genindex.pl
genindex04.pl
# AIM: Complete re-write - Given an input folder, generate a tempsitemap.htm of
# a complete directory scan
# 10/12/2013 - Add alpha sorted jump list.
# 18/11/2013 - Add description column, from description.csv file
# 06/01/2012 geoff mclane http://geoffair.net/mperl
genindex2.pl
# AIM: genindex2.pl
# to read a FOLDER, find the INDEX HTML file there, and build a LIST of LINK from it
# That list give the HTM file name and title
# FIX20060626 - added option to build list into an Array, giving lnk,file date,title ...
# of form
# var ma = new Array(
# new item( "index.htm", "Index", "Link to main index" ),
# new item( "fgfs-026.htm", "2006-06-06", "FlightGear 0.9.10 with MSVC8"),
# to get the file data, using
# ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
# $atime,$mtime,$ctime,$blksize,$blocks)
# = stat($filename);
# or
# my $sa = stat($filename);
# my $tm = scalar locatime $sa->$mtime;
# UGH - But this is ALL extracted from index.htm ... not exactly what I want now ...
genindex3.pl
# AIM: genindex3.pl
# to read a FOLDER, find ALL the HTML files there, and build a LIST
# see genindex2.pl if you want -
# to read a FOLDER, find the INDEX HTML file there, and build a LIST of LINK from it
#
# From that list of ALL HTM files - output name and title
# FIX20060626 - added option to build list into an Array, giving lnk,file date,title ...
# of form
# var ma = new Array(
# new item( "index.htm", "Index", "Link to main index" ),
# new item( "fgfs-026.htm", "2006-06-06", "FlightGear 0.9.10 with MSVC8"),
# to get the file data, using
# ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
# $atime,$mtime,$ctime,$blksize,$blocks)
# = stat($filename);
# or
# my $sa = stat($filename);
# my $tm = scalar locatime $sa->$mtime;
genjsarray.pl
# AIM: Given an input folder, generate a javascript array of file
# 26/06/2008 geoff mclane - http://geoffair.net/mperl/
genmake.pl
# AIM: Given an input folder, file mask, and destination folder,
# write a simple MAKEFILE to copy the found in files, to the destination.
# 29/05/2007 - geoff mclane - geoffmclane.com/mperl/index.htm
genmiscind.pl
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
# Commands: in-folder [-out out-file]
genpass.pl
# AIM: generate a STRONG random password
# ==========================================================================
# 02/04/2008 - change from using batch file to control repeats, to directly
# getting the 'Y' from within Perl. This way AVOID
# adding unaccepted passwords to the file, since the file is ONLY written
# if 'Y' is entered ...
# ==========================================================================
# 12/07/2007 - add -s to show password list
# 05/07/2007 - add LOG of passwords generated
# 24/06/2007 - removed log file.
# 20/06/2007 geoff mclane - http://goeffair.net
genprimes.pl
# AIM: To generate all the primes numbers up to a maximum number,
# and insert them into an array, which expands itself ...
# see : http://www.perlmeme.org/tutorials/arrays.html
genreadme.pl
# AIM: Read all current perl scripts, seek 'NAME' and 'AIM', and generate a list
gensiteindex.pl
# AIM: Given a root file, or folder, scan ALL direcotries, build and output
# a site index.
# 2010/04/13 - geoff mclane - http://geoffair.net/mperl/
genslnlist.pl
gensource.pl
# AIM: VERY SPECIFIC - take a file list, and generate DSP SOURCE lines
# 2009/09/22 - geoff mclane - http://geoffair.net/mperl/
genspltable.pl
# AIM: VERY SPECIAL - just to get the TABLE in HTML
gensrclist.pl
# AIM: Given a FOLDER input, generate a source list of files in the folder,
# EXCLUDING those with extension in the @excluded_exts list.
# 04/11/2008 geoff mclane http://geoffair.net/mperl
gensrclist2.pl
# AIM: Given a FOLDER input, generate a source list of files in the folder,
# EXCLUDING those with extension in the @excluded_exts list.
# Full re-write of gensrclist.pl
genstruct.pl
# AIM: not sure???
genstruct2.pl
# AIM: REAL SPECIFIC - generate a structure
# 2009/09/25 - geoff mclane - http://geoffair.net/mperl/
gensvnexcl.pl
# AIM: Read a folder, and build a zip exclude file of all '.svn' folders ...
gentable.pl
# AIM: Generate a BIG link table ... it can contain all 'links', other files, and/or images
# 20070127 - fix for get_nn only
genthumbs.pl
# AIM: Given an imput file, or folder, generate a thumbnail image using imagemagik
# 18/06/2013 geoff mclane http://geoffair.net/mperl
gentime.pl
# AIM: Just a simple example showing the use of 'localtime' builtin function.
# 27/11/2008 Added 'gmtime', to get UTC/GMT time of a file.
# 29/07/2007 - geoff mclane - http://geoffair.net/mperl/index.htm
geo-metar.pl
geo-metar02.pl
# AIM: Get the METAR for a particular ICAO
geo-taf.pl
getapt.pl
# AIM: *** VERY SPECIFIC *** Testing fetching and writing navdata json
getapts.pl
# AIM: QUITE RESTRICTED - Read an airport CSV file, and find airports closest
# to a given lat,lon
getcfxml.pl
# AIM: Get the fgx.ch crossfeed xml feed
# 25/04/2013 geoff mclane http://geoffair.net/mperl
getcfxml02.pl
# AIM: Fetch the crossfeed flights.xml, and keep some flight stats, using XML:Simple
getclopts.pl
# AIM: SPECIFIC - Read cl-options.txt file, and convert to hash
# 07/01/2011 geoff mclane http://geoffair.net/mperl
getcommits.pl
# AIM: Get gitorious commits...
# 07/07/2011 geoff mclane http://geoffair.net/mperl
getdifflist.pl
# AIM: Use the GNU diff utility to prepare a list for winmerge
# 11/04/2013 - Some UI improvements
# 16/03/2011 geoff mclane http://geoffair.net/mperl
getfgxlist.pl
# AIM: Get google FGx list...
# 01/07/2011 geoff mclane http://geoffair.net/mperl
getfilecounts.pl
# AIM: Given a root file, or folder, scan ALL directories, and report 'type' counts...
# but in essence this is just a 'template' for further file processing
# 2010/04/13 - geoff mclane - http://geoffair.net/mperl/
getfunclist.pl
# AIM: Given a perl script, scan, and output function list, and line number
# 10/06/2012 - Add -c to scan C/C++ and list prototypes, out to a DEF file
# 24/09/2011 - Turn of $debug_on, and add '#' to start of list
# 22/07/2011 - If given TWO perl files, compare the function lists
# 28/08/2010 geoff mclane http://geoffair.net/mperl
gethost.pl
# AIM:
gethost01.pl
# AIM: Get the HOST IP address, using the domain name
# 13/08/2011 - minor update - called by getip.bat
gethostbyip.pl
# AIM: Get the HOST name, given an IP address
gethrefs.pl
# AIM: Parse a HTML file, and extract HREF links
# 20/10/2011 - Add user options - parse_args()
# 18/07/2010 - revisit and test...
gethrefs02.pl
# AIM: Parse a HTML file, and extract HREF links
# 18/07/2010 - revisit and test...
getifarray.pl
# AIM: Read a Perl script, and output an 'if' array
# 2009/10/24 - geoff mclane - http://geoffair.net/mperl/
getimg4htmurl.pl
# AIM: Read a HTML file, and get the <img, and fetch the image via HTTP, and save...
# 23/02/2012 geoff mclane http://geoffair.net/mperl
getimgsize.pl
# AIM: Given a folder, use Imagemagick identify to get the image sizes
# 08/12/2008 - externalise im_get_image_size(file_name)
# 08/07/2008 geoff mclane http://geoffair.net/mperl
getjson.pl
# AIM: Download http://cf.fgx.ch/data json data, or localhost
# 24/12/2012 -
getmissing.pl
# AIM: VERY SPECIAL - read getmissing.txt, containing MSVC output, and list the 'unresolved'
# 9/14/2009 - geoff mclane - http://geoffair.net/mperl/
getmm.pl
# AIM: Given a lat,lon [and span], generate and output min/max
getos.pl
getpwd.pl
# AIM: To quietly get UNECHOED password,
# BUT DOES NOT WORK IN WINDOWS IMPLEMENTATION!!!
# **********************************************
getsrclist.pl
gettaf01.pl
# AIM: Get the TAF text from a URL page per directory
# 25/01/2008 - geoff mclane
# references
# see from : http://aviationweather.gov/static/help/taf-decode.php - see html/taf-decode.htm
# from : http://mbev.net/wikka/METARSandTAFS
# KJAX 020256Z 02003KT 10SM TSRA OVC01OCB SCT100 BKN130 18/17 A2996
# METAR's will always be published in the same order: see: html/METARSandTAFS.htm
# http://weather.noaa.gov/pub/SL.us008001/DF.an/DC.sflnd/DS.synop
# SEE : http://www.nws.noaa.gov/oso/oso1/oso12/document/guide.shtml for DECODE
geturl.pl
# AIM: Get the text from a URL page ...
# 22/01/2008 - geoff mclane
# references
# see from : http://aviationweather.gov/static/help/taf-decode.php - see html/taf-decode.htm
# from : http://mbev.net/wikka/METARSandTAFS
# KJAX 020256Z 02003KT 10SM TSRA OVC01OCB SCT100 BKN130 18/17 A2996
# METAR's will always be published in the same order: see: html/METARSandTAFS.htm
# see from : http://www.nws.noaa.gov/oso/oso1/oso12/document/guide.shtml
# also from : http://www.faa.gov/about/office_org/field_offices/fsdo/orl/local_more/media/ppt/metar.ppt
# from : http://www.srh.noaa.gov/srh/cwwd/msd/note6.html
# from : http://www.wunderground.com/metarFAQ.asp
# from : http://www.nws.noaa.gov/oso/oso1/oso12/overview.htm
# from : http://www.flyingineurope.be/metar_taf_decode.htm
# from : http://www.alaska.faa.gov/fai/afss/metar%20taf/metcont.htm
# from : http://www.geocities.com/CapeCanaveral/Lab/6799/metarpg.htm
# from : http://www.alaska.faa.gov/fai/afss/metar%20taf/sametar1.htm
# from : http://weather.cod.edu/notes/metar.html
geturl02.pl
# AIM: Get the text from a URL page ...
# 22/01/2008 - geoff mclane
# references viewed - SEE END OF FILE
# Decodes built with LOTS of empirical testsing, and an account has been taken for
# quite a number of EXCEPTIONS found in decoding the 2600 TAF from the NOAA site.
getvars.pl
# AIM: Read the error output, and build a set of names used ...
getwarnlist.pl
# AIM: VERY SPECIFIC - read getwarnlist.txt, the output of MSVC compile,
# and give a warning list, by project
# 9/13/2009 - geoff mclane - http://geoffair.net/mperl/
glGet.pl
# AIM: Specialised to process a glGet.xml, and produce a C table
# 23/06/2009 geoff mclane http://geoffair.net/mperl
goto-test.pl
gps01.pl
gps02.pl
gps03.pl
groundnet.pl
# AIM: Quite specific - Read a FG airport groundnet.xml and show info
# 30/08/2013 geoff mclane http://geoffair.net/mperl
guessdsp.pl
# AIM: Scan the directory and build a GUESSED DSP file
h2h01.pl
# AIM: Convert a HTML file, to an online HTML page, color coded...
# 29/07/2009 geoff mclane http://geoffair.net/mperl3
hashref.pl
# AIM: test returning a HASH reference
# 23/01/2008 - geoff mclane
# see hashref02.pl, for a BETTER example
# see: Yahoo! search 'perl indirect reference'
hashref02.pl
# AIM: Just testing how to add values to a hash, return that hash, and show
# the values in the hash (reference)
# Inspiration for this example came from -
# http://www.cs.mcgill.ca/~abatko/computers/programming/perl/howto/hash/ - a great page about hashes
# 29/10/2008 - geoff mclane - http://geoffair.net/mperl
hashtest.pl
# AIM: Test some HASH games
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
# ####################################################
hasmain.pl
# AIM: Read a C/C++ file, and search for main() { } function ...
# 09/08/2010 - Added UI
# 20/11/2007 - geoff mclane - http://geoffair.net/mperl
hasmain02.pl
# AIM: Check if a file, or files, or any C/C++ files in a directory, recursive if desired
# has a 'main' function. Uses the lib_chkmain.pl
# Is a complete RE-WRITE of the previous hasmain.pl
# 18/03/2014 - Maybe make note if main() is preceeded by an #ifdef TEST
hexconv.pl
hgt_srtm.pl
# AIM: VERY SPECIFIC
hilogmax.pl
# AIM: *** VERY SPECIFIC *** Read a fgms.log, and NOTE the highest 'max: nn' clients
# 10/03/2014 geoff mclane http://geoffair.net/mperl
hommage-sql.pl
# AIM: VERY SPECIFIC
hrefsub.pl
hrefsub02.pl
htmconv.pl
htmimglist.pl
# AIM: given a HTML file, list all the 'image' links in the file.
# 19/03/2010 - also report existance of file...
# 06/05/2009 geoff mclane http://geoffair.net/mperl
html-dom.pl
# AIM: Test HTML::DOM interface...
html01.pl
html02.pl
# AIM: Use HTML::Parser to CLEAN a WORD HTML output
# This is an EVENT parser, so a sub is provided to be
# called on each 'event' ...
# ##################################################
html03.pl
html2text.pl
htmlclass.pl
# AIM: Get class list from html file
htmlconv.pl
# AIM: SPECIALISED - Add an alphbaetic list to openlayers.html
htmlparse.pl
# AIM: Experiment with HTML Parser
htmlparse02.pl
# AIM:
icao2num.pl
iftest.pl
# AIM: Test soem IF patterns, from Makefile.am files
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
# ####################################################
imagemagic.pl
# AIM: Test of ImageMagic installation
imgalt01.pl
# AIM: To extract the <img alt="..." atribute for translation
# If $addtr is 1, then a search and load current 'tranlation'
# which is added to the table ...
# =====================================================================
imgalt02.pl
# AIM: To extract the <img alt="..." atribute of each image,
# in all (both) English and French version ...
# Read a JetPhoto, fix each entry in the
# studio.plist XML file ... each has to be inserted as
# <key>Description</key>
# <string>English description ... French Description</string>
# and save the new studio.plist file ...
# =====================================================================
imgconvert.pl
# AIM: Using imagemagick 'convert' convert full jpg images to thumbnils
imgindex.pl
# AIM: To read a FOLDER, finding all image files, and preparing a SIMPLE table index
# 08/12/2008 - revisited, but has PROBLEM of distorting many images into the FIXED
# display size of 128x128, but does build a SIMPLE index ...
# Also when adding the FULL PATH, leaves 'spaces' in path name, if any.
# Dec 12, 2006 geoff mclane http://geoffair.net/mperl
# Also see genimgindex.pl, which uses Imagemagick, 'identify' app, if installed, to get the image sizes.
imgindex02.pl
# AIM: To read a FOLDER, finding all image files, and preparing a SIMPLE table index
# 14/02/2011 - revisited - genimgindex.pl seems too complicated, so try this one...
# 08/12/2008 - revisited, but has PROBLEM of distorting many images into the FIXED
# display size of 128x128, but does build a SIMPLE index ...
# Also when adding the FULL PATH, leaves 'spaces' in path name, if any.
# Dec 12, 2006 geoff mclane http://geoffair.net/mperl
# Also see genimgindex.pl, which uses Imagemagick, 'identify' app, if installed, to get the image sizes.
imglist.pl
# AIM: Given a folder, search for ALL image files
# 20/04/2013 - add html output
# 08/12/2008 - revisited, and works fine as a SIMPLE LIST
# 19/07/2008 geoff mclane http://geoffair.net/mperl
imgratio.pl
# AIM: Play with MATH, to re-size an image, keeping the aspect ratio ...
# 08/12/2008 - add 2 more examples
# 17/08/2007 - geoff mclane - geoffiar.net/mperl/samples
# AIM: Given a folder, search for ALL image files
#
# genimgindex.pl - (see earlier simpe imgindex.pl)
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
#
# imgindex.pl
# AIM: To read a FOLDER, finding all image files, and preparing a simple table index
#
# getimgsize.pl
# AIM: Given a folder, use Imagemagick identify to get the image sizes
# and write a tempjs.js with the image sizes in an array
#
# imagemagic.pl
# AIM: Test of ImageMagic installation - use Image::Magick;
#
# imgalt02.pl
# AIM: To extract the <img alt="..." atribute of each image,
# in all (both) English and French version ...
# Read a JetPhoto, fix each entry in the
# studio.plist XML file ... each has to be inserted as
# <key>Description</key>
# <string>English description ... French Description</string>
# and save the new studio.plist file ...
#
# imgsize.pl - MODULE
# AIM: Use external imagemagick 'identify.exe' to get an image SIZE geometry
# Services: im_get_image_size( file_name ); returns geometry nnnnxnnnn
# im_get_image_width( geometry ); returns WIDTH
# im_get_image_height( geometry ); returns HEIGHT
#
# imgratio.pl
# AIM: Play with MATH, to re-size an image, keeping the aspect ratio ...
#
# eof - imgratio.pl
in2cmake.pl
# AIM: Try to convert an *.in file to cmake format
# 29/05/2014 - add --full to include comments as well
# 27/05/2014 - some improvements
# 06/02/2014 geoff mclane http://geoffair.net/mperl
inch2pas.pl
inctrail.pl
# AIM: Given an in C/C++ file, check for #include "file" and #include <file>
# statements, and follow the trail, listing ALL included files, included ...
# 01/08/2010 - check it out, and add UI
# 07/10/2007 - geoff mclane - http://geoffair.net/mperl/
###################################################################
inctrail02.pl
# AIM: Given an in C/C++ file, check for #include "file" and #include <file>
# statements, and follow the trail, listing ALL included files, included ...
# 07/07/2013 - More UI improvements
# 07/08/2012 - Further UI improvements
# 07/02/2012 - Exlude the $def_file if not $debug_on
# 2010/04/25 - avoid duplicate header output
# 20090817 - add input argument support
# 02/08/2008 - skip over C and inline comments in headers ...
# 20/12/2007 - Process EACH include as and when FOUND
# 07/10/2007 - geoff mclane - http://geoffair.net/mperl/
###################################################################
indexone.pl
# AIM: Using the file input, create a HTML table item
# 05/05/2010 geoff mclane http://geoffair.net/mperl
inphones.pl
# AIM: A check of the number from one file, are present in another ...
input.pl
# AIM: Test getting User keyborad input ...
# 09/03/2008 - geoff mclane - http://geoffair.net/mperl/samples
installed.pl
# AIM: To enumerate the installed modules ...
isnumber.pl
# AIM: Various way to determine if a 'variable' is a number...
# 24/08/2009 geoff mclane http://geoffair.net/mperl
iso3166.pl
# AIM: Output ISO 3166 table, and
#
iso3166bld.pl
# AIM: Output ISO 3166 table, and
#
iso639.pl
# AIM to download the table from the site, and build a 'validation' table ...
json-test.pl
json2html.pl
# AIM: Read a JSON file, and output it as HTML
# Based on javascript idea at http://json.bloople.net/
# 10/03/2013 geoff mclane http://geoffair.net/mperl
k2m.pl
# AIM: convert kilometer to miles
# geoff mclane - http://geoffmclane.com/mprerl/index.htm - 2007-04-04
keyboard.pl
# AIM: Simple test of polling the keyboard, ussing 'ReadKey'
# 07/12/2010 geoff mclane http://geoffair.net/mperl
km2miles.pl
# AIM: Take kilometer input, and display statute miles,
# using 1 Kilometer = 0.62137 Miles
# 27/06/2008 geoff mclane - http://geoffair.net/mperl
linecount.pl
# AIM: To count the lines in a file, IGNORING lines that are ALL spacy, or with less that
# a certain number of characters ...
# 03/01/2008 - geoff mclane - http://geoffair.net/mperl/
lineendings.pl
lineends.pl
# AIM: Check the line ending of a file
# 14/10/2013 - update style and functionality
linkhtml.pl
# AIM: Given one input HTML file, parse HTML elements, and show each 'link' given in the file...
# 2010/04/13 - looking good...
# 2010/04/12 - geoff mclane - http://geoffair.net/mperl/
linkhtml02.pl
# AIM: Given one input HTML file, parse HTML elements, and show each 'link' given in the file...
# 2010/04/14 - moved main contents to htmllib.pl
# 2010/04/13 - looking good...
# 2010/04/12 - geoff mclane - http://geoffair.net/mperl/
list2array.pl
# AIM: Take a file list, and build a perl array item.
# 16/07/2010 geoff mclane http://geoffair.net/mperl
listap01.pl
# AIM: Read FlightGear apt.dat.gz file, and list AIRPORTS within ...
listexes.pl
# AIM: Given an input directory, list the *.exe found. Do not duplicate if 'name.exe' and 'named.exe'
# 04/11/2011 - Also count _D.exe as Debug form
# 14/09/2011 geoff mclane http://geoffair.net/mperl
listfpfolders.pl
# AIM: Given an imput foldeer. make a list of all FRONTPAGE folders
# I use this list to avoid ZIPPING these folders, when doing a zip backup ...
# 17/07/2008 geoff mclane http://geoffair.net/mperl
listhdrs.pl
# AIM: Given an input directory, produce a cmake like header list
# 27/10/2013 geoff mclane http://geoffair.net/mperl
listhrefs.pl
# AIM: Given a html file, output a list of hrefs
# 22/12/2013 geoff mclane http://geoffair.net/mperl
listincs.pl
# AIM: Given a C/C++ file, skip comments, and list the 'include' files found
# 27/10/2013 geoff mclane http://geoffair.net/mperl
listlibs.pl
# AIM: Given an input directory, list the *.lib found. Do not duplicate if 'name.lib' and 'named.lib'
# 29/08/2012 - Add -r <dir> to show list relative to this directory
# 04/11/2011 - Add -F FULL, and -f full - CWD
# 25/10/2011 - Add option to include *.pdb
# 14/09/2011 geoff mclane http://geoffair.net/mperl
listobj.pl
# AIM: Given a folder, make a sub-folder list containing *.obj files
# 20/06/2010 geoff mclane http://geoffair.net/mperl
listregex.pl
# AIM: Read perl files, and list all 'regex' expressions found
# 8/29/2009 - geoff mclane - http://geoffair.net/mperl/
listrepodirs.pl
# AIM: Given an imput foldeer. make a list of all FRONTPAGE folders
# I use this list to avoid ZIPPING these folders, when doing a zip backup ...
# 2010/01/31 - geoff mclane - http://geoffair.net/mperl/
listunres.pl
# AIM: Scan a MSVC build log ouput and list unresolved items, by some order
# 21/12/2013 geoff mclane http://geoffair.net/mperl
ll2dms.pl
# AIM: Convert a lat, lon to degree, minutes, seconds
ll2xyz.pl
# AIM: Convert latitude, logitude to x,y,z co-ordinates
loadtable.pl
# AIM: Load a HTML table into a multidimensional array
location.pl
log2cmake.pl
# AIM: Take a unix build log, and attempt to create a CMakeLists.txt from it, hopefully...
# 23/12/2013 - Some more tweaks using unix-bldlog.txt for gmp library
# 25/10/2013 - If given a current base, use a full directory scan to search for source files
# 02/10/2013 - Add -b base_directory used in log file
# 27/08/2013 - Lots more work with different styles build log files, and fill out the cmake script
# 20/08/2013 - gcc lines can be a compile or a link
# 13/03/2013 geoff mclane http://geoffair.net/mperl
logtest.pl
# AIM:
m4scan-old.pl
# AIM: Scan an M4 auto-tools MACRO file
# 05/10/2010 geoff mclane http://geoffair.net/mperl
m4scan.pl
# AIM: Scan an M4 auto-tools MACRO file
# 05/10/2010 geoff mclane http://geoffair.net/mperl
magvar.pl
# AIM: Given lat, lon, hh dd mm yy output magnetic variation
# 13/11/2013 geoff mclane http://geoffair.net/mperl
main.pl
main02.pl
mainorg.pl
make2cmake.pl
# AIM: Given an nmake 'makefile' try to generatet the equivalent cmake CMakeLists.txt
# 02/09/2013 - Given a base directory, follow sub-directories... and load include files
# 27/08/2013 - Only show lines not dealt with once
# 02/07/2013 - Fill in valid SOURCE directories for searching
# 01/05/2013 - Default to 'Console Application' is NO extension - need better way!!!
# 20/03/2013 - Also search for 'default:' like 'all:',and accept either...
# 09/01/2013 - Attempt some improvements
# 03/12/2012 - some improvements and fixes
# 18/07/2012 - Initial cut
makesrcs.pl
# AIM: Read a makefile, and (hopefully) list the SOURCES
# 23/08/2010 - Turn OFF debug for release, and add a littel HELP
# 09/08/2010 - Another try to improve the makefile scan...
# 06/07/2010 - Revisit, and hopefully IMPROVE
# 26/12/2007 - geoff mclane - http://geoffair.net/mperl
makesrcs02.pl
# AIM: Read a makefile, and (hopefully) list the SOURCES
# 24/03/2014 - More... but decided too complicated... ;=((
# 28/08/2010 - Add more features, when using with say libxml2 makefile.msvc
# 23/08/2010 - Turn OFF debug for release, and add a littel HELP
# 09/08/2010 - Another try to improve the makefile scan...
# 06/07/2010 - Revisit, and hopefully IMPROVE
# 26/12/2007 - geoff mclane - http://geoffair.net/mperl
maptest.pl
# AIM: Convert a lat long zoom to a tile number
# 17/02/2014 geoff mclane http://geoffair.net/mperl
maptile.pl
# AIM: Convert a lat long zoom to a tile number
# from : http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames
#
# Directory structure - like
# OSM 'standard' style http://[abc].tile.openstreetmap.org/zoom/x/y.png 0-19
#
# Zoom Coverage Tiles
# 0 1 tile world 1
# 1 2 X 2 4
# 2 4 x 4 16
# n 2^n x 2^n 2^2n
# 12 4096 x 4096 16,777,216
# 16 4,294,967,296 = 2^32
# 17 17,179,868,184
# 18 68,719,476,736
# 19 Max. mapnik 274.877.906,944
# X goes from 0 (left edge is 180 deg W) to 2^zoom - 1 (right edge is 180 deg E
# Y goes from 0 (top edge is 85.0511 to 2^zoom - 1 (bottom edge is 85.0511 deg S) in a Mercator projection
# For the curious, the num 85.0511 is the result of arctan(sinh(Pi)). By using this bound, the entire map
# becomes a (very large) square. See also the Osmarender bug.
#
# 17/02/2014 geoff mclane http://geoffair.net/mperl
match.pl
# AIM: Testing 'matching' to wild functions
math-trig.pl
math_trig.pl
# AIM:
md5.pl
md5sum.pl
merc2wsg84.pl
# AIM: Convert a WSG84 lon,lat pair to a a spheical mercator point
# 31/10/2011 geoff mclane http://geoffair.net/mperl
# from : http://www.mail-archive.com/gdal-dev@lists.osgeo.org/msg03050.html
# /* spherical mercator for Google, VE, Yahoo etc
# * epsg:900913 R= 6378137
# * x = longitude
# * y= R*ln(tan(pi/4 + latitude/2)
# */
# Also see : http://code.google.com/p/gepy/source/browse/trunk/tile.py
# Coordinate extent of Earth in EPSG:900913:
# [-20037508.342789244, -20037508.342789244, 20037508.342789244, 20037508.342789244]
# The constant 20037508.342789244 comes from the circumference of the Earth in meters,
# which is 40 thousand kilometers, the coordinate origin is in the middle of extent.
# In fact you can calculate the constant as: 2 * math.pi * 6378137 / 2.0
# Polar areas with abs(latitude) bigger then 85.05112878 are clipped off.
#What are zoom level constants (pixels/meter) for pyramid with EPSG:900913?
# whole region is on top of pyramid (zoom=0) covered by 256x256 pixels tile,
# every lower zoom level resolution is always divided by two
# initialResolution = 20037508.342789244 * 2 / 256 = 156543.03392804062
mergetest01.pl
# AIM: To run some tests on a WinMerge build ...
# Based on testdiff.pl, by Perry Rapp, 2006-02-07
meters2feet.pl
# AIM: Simple conversion of meters to feet...
# 04/03/2010 geoff mclane http://geoffair.net/mperl
meters2miles.pl
miles2meters.pl
modlist.pl
module-version.pl
modvers.pl
moonstuff.pl
movedsp.pl
# AIM: Given a path to a DSP file, move it to a new target directory,
# fixing all the relative paths of the SOURCE files, and maybe attempting
# to 'fix' the CPP lines
# 07/01/2011 - Review of this utility, using later lib utilities
# 05/03/2010 geoff mclane http://geoffair.net/mperl
mph2fps.pl
# AIM: Convert MILE PER HOUR to FEET PER SECOND
mph2knot.pl
# AIM: Convert MILE PER HOUR to KNOTS
# 1 Miles Per Hour = 0.86897699264 Knot.
mptelnet.pl
# AIM: Establish telnet connection with fgms host and get repsonse
# 07/10/2013 - rename from telnet2.pl to mptelnet.pl
# 25/04/2013 geoff mclane http://geoffair.net/mperl
mruvc8-02.pl
# AIM: To enumerate the Microsoft Visual Studio 8 Express (MSVC8) from registry
# geoff mclane - http://geoffmclane.com/mperl/samples/index.htm - 20070402
# 02/11/2011 - Avoid duplicate outputs...
# 01/02/2011 - Drop the FILE list - only the project list, and check the sln file still exists
# 2009/09/15 - Also include VC9
# 25/09/2007 - see mruvc8.pl, for simple sample - this add a LINK to the .SLN
# file, if it EXISTS now ...
#
mruvc8.pl
# AIM: To enumerate the Microsoft Visual Studio 8 Express (MSVC8) from registry
# geoff mclane - http://geoffmclane.com/mperl/samples/index.htm - 20070402
ms2time.pl
msfs-fp.pl
# AIM: Read and show details of the MSFS2002 FLight Plan file
# 09/11/2010 geoff mclane http://geoffair.net/mperl
msh2sh.pl
msvc8incs.pl
# AIM: Show content of MSVC8 'configuration' file ...
msvclog.pl
# AIM: Read a MSVC build log output, and report success and failed project
# 20/07/2013 geoff mclane http://geoffair.net/mperl
msvcvers.pl
# AIM: To check what VERSIONS of MSVC build files exist in a particular folder ...
# If *.dsp (and maybe *.dsp) then Version 6 (MSVC6)
# If *.sln (and maybe *.vcproj) then CHECK if 7 or 8 ...
# 14/11/2009 - minor update
nasa-srtm-range.pl
# AIM: very specific - search an FTP list, for files within range
# 26/04/2009 geoff mclane http://geoffair.net/mperl
navcsv.pl
# AIM: Parse apt1000-nav.csv and show items within a bounding box
# 06/11/2013 geoff mclane http://geoffair.net/mperl
newfolders.pl
# AIM: given two folders, do a resursive search and report new folder,
# or folders in the first not in the second
# input: first_folder second_folder
newproj.pl
# AIM: QUITE SPECIAL - Take the BLANK project, and given a new ouput directory
# and project name, copy BLANK to there, and change the names...
# 07/12/2012 - Finalize - and shift to CMake building
# 06/08/2010 geoff mclane http://geoffair.net/mperl
nls-names.pl
# AIM: *** VERY SPECIFIC *** Read given file and generate C structure/table
nsisfiles.pl
# AIM: Read a MSIS msi script, and prepare a file list...
# 15/02/2013 - Initial cut
numsort.pl
# AIM: Sort a file, taking the first columns as numbers ...
opendir01.pl
# AIM: Open a directory, and get a file list with a specific extension
# 24/07/2010 - some small enhancements
opendir02.pl
# AIM: Attempt to open a known REMOTE directory, and get a file list
# Wow, successed with BOTH a direct opendir/readdir/closedir,
# and then 'stat' also works, *** AND ***
# open( DIR "dir $dir |"); @arr = <DIR>; close DIR;
# which says great things for perls windows implementation...
# 24/07/2010 geoff mclane http://geoffair.net/mperl
order.pl
osgvers.pl
# AIM: See if we can FIND the Version strings, of OpenSceneGraph,
# given an INPUT (base) direcotry to check ...
# 11/24/2008 - geoff mclane - http://geoffair.net/mperl/
osm-gpx.pl
# AIM: Read a *.gpx XML file, and list points
# 20/12/2011 geoff mclane http://geoffair.net/mperl
osm-load.pl
# AIM: Load an XML OSM file
osm2ac3d.pl
# AIM: Search for a 'way' id in an osm file, and generate an AC3D .ac file of the building model
osmcut2.pl
# AIM: Read planet.osm, and extrct info...
p2h.pl
# AIM: Convert a single perl file to HTML, using perl.css style
# USE: p2h <input> [<output>]
p2h01.pl
p2h02.pl
p2h03.pl
p2h04.pl
p2hall.pl
p2hall01.pl
p2hall02.pl
p2hall03.pl
p2html.pl
p2html10.pl
p2html11.pl
p2html12.pl
p2html2.pl
p2html3.pl
p2html4.pl
p2html5.pl
p2html6.pl
p2html7.pl
p2html8.pl
p2html9.pl
p2htxt01.pl
package.pl
# AIM: Simple use of 'package' declaration
pageview02.pl
# AIM: Get info from net, and generate a page viewer ...
pageviewer.pl
# AIM: Get info from net, and generate a page viewer ...
parse-xml.pl
# AIM: My attempt at my OWN XML parser
parse-xml02.pl
# AIM: My attempt at my OWN XML parser
# This is the second attempt, with a complete RE-WRITE
# 27/01/2010 geoff mclane http://geoffair.net/mperl
parse-xml03.pl
# AIM: My attempt at my OWN XML parser
# This is the second attempt, with a complete RE-WRITE
# 27/01/2010 geoff mclane http://geoffair.net/mperl
pas2inch.pl
patch-conv.pl
patch2wm.pl
# AIM: Read a diff patch file, and produce a wm batch file
patchit.pl
# AIM: 24/03/2012 Accept a patch file as input, and apply the patches
# This was NOT written as a replacement of the 'patch' tool, which does a
# very good job, but to better # understand the unified diff notation, and
# how to apply it.
# UGH: With MSVC10 must deal with BOM (Byte Order Mark), like
# UTF-8 EF BB BF 239 187 191
# =======================================================================
path2dos.pl
paths2dos.pl
# AIM: Given an input file, like the cmake install_manifest.txt, converts the paths
# to DOS form, and write to the -o file, else to stdout
# 03/12/2013 geoff mclane http://geoffair.net/mperl
perl-list.pl
# AIM: SPECIALISED - Just to make a perl-list.txt and perl-list.htm file
# 23/12/2011 geoff mclane http://geoffair.net/mperl
perms.pl
# AIM: Convert unix permission string to dec, hex, and OCTAL display
# each triplet: rwx = 4 + 2 + 1 = 7
# 31/03/2008 - geoff mclane - http://geoffair.net/mperl
person01.pl
php2htm01.pl
# AIM: Convert PHP file sources to colour coded HTML
# geoffmclane.com - 2006.09.13
# 20070127 - fix for get_nn only
php2htm02.pl
# AIM: Convert PHP file sources to colour coded HTML
# geoffmclane.com - 2006.09.13
# 31/07/2007 - add some more WARNINGS to output
plandevol-eng.pl
plandevol-eng01.pl
print-literals.pl
printenv.pl
# AIM: print out the environment strings ...
probe-os.pl
# AIM: Show some information about the Perl version, and the underlying OS
# 14/10/2009 minor update
# 10/03/2009 geoff mclane http://geoffair.net/mperl
proclist.pl
projects.pl
# AIM: SPECIAL: Read C:\MDOS\ get h*.bat file, and present a list
# 07/12/2012 - Initial cut
rads2degs.pl
# AIM: Given input of RADIANS, output DEGREES
randgif1.pl
ratio.pl
# AIM: Given a size like 3296x2472, and a desired width, like 400, find height
ratio2.pl
read-keyboard.pl
readcfg.pl
readlog.pl
# AIM: VERY SPECIFIC - read a big 'log' file,
# sort, and show the information
# 15/11/2009 geoff mclane http://geoffair.net/mperl
recent.pl
# AIM: To start, and keep a database of 'Recently Used Files'
# for each product. I always HATE that they ususally only support
# a maximum of 16 - BAH ...
# 20061029 - geoff mclane - http:\\geoffmcane.com\mperl\samples
# but regretably, it was NEVER finished ...
redbrick.pl
ref.pl
# AIM: test returning a HASH reference
# 23/01/2008 - geoff mclane
refs.pl
reg01.pl
reg02.pl
reg03.pl
reg04.pl
reg05.pl
# AIM: get ONE entry from the registry ...
# 30/10/2006 geoff mclane http://geoffair.net/mperl
# ##########################################################
regclass.pl
# AIM: To explore the File Type associations in the registry,
# printing out all extensions found, and then enumerating the
# association to each extension (suffix if you will).
# 23/10/2010 - Review, and add input of an extension
# geoff mclane - http:\\geoffmclane.com - updated 20070402, commenced 20070120
# NOTES:
# This is in Windows XP Pro - it enumerates HKEY_CLASSES_ROOT
# The four top-level objects are: $HKEY_CLASSES_ROOT $HKEY_CURRENT_USER $HKEY_LOCAL_MACHINE $HKEY_USERS
# It does NOT resolve the indirect 'openwith' entries
# Turning on $dbg1 will show LOTS of enumeration ouput.
# It was mainly written as an 'exercise' in enumerating the registry, recursively ...
# It uses my logfile.pl, but this could be removed...
regex-date.pl
regex-email.pl
regex.pl
relinehtm.pl
# AIM: To reline HTML, just per tags
relinejs.pl
# AIM: Attempt to reline javescript files...
# 05/05/2013 - Try to keep for(...;....;...) on ONE line
# 12/01/2013 - Try to keep 'function(a,b,c) {' on same line
# 24/08/2011 - Review and improvements...
# 20/12/2009 geoff mclane http://geoffair.net/mperl
relinetxt.pl
# AIM: SPECIAL: Reline a text file
# 03/08/2008 geoff mclane http://geoffair.net/mperl
relinetxt02.pl
# AIM: General RELINE an input text file...
# 20130501 - Do not kill all paragraphing by default, and no wrap by default...
# 31/12/2012 - Initial cut
# Also see special relinetxt.pl - 03/08/2008
reltest.pl
# AIM: Test my relative.pl module ...
remdebug.pl
# AIM: VERY SPECIFIC - Clean a debug file from fgcom
# 24/02/2013 - First cut
remdupes.pl
# AIM: Given an input file, check for duplicate line, and output a single set
# 24/12/2013 - Add -s to SORT the output list
# 05/08/2013 geoff mclane http://geoffair.net/mperl
replace01.pl
# AIM: To 'replace' a block of text after finding where, in a set of HTML files
# 30/07/2007 geoff mclane - http://geoffair.net/mperl
replacetxt.pl
# AIM: Given an input file, a text string to find, and a text string to replace it with,
# and an OUPUT file to write.
# 19/05/2012 geoff mclane http://geoffair.net/mperl
repltext.pl
# AIM: Open in file and replace -f string with -r string, out to -o out_file
samp01.pl
scanconfac.pl
# AIM: Scan a configure.ac file
scanhgt.pl
# AIM: Special SCAN of HGT files
secsinyear.pl
sendmail01.pl
server0.pl
server2.pl
server3.pl
server4.pl
server5.pl
server6.pl
set-bucket.pl
# AIM: A perl rendering of the set_bucket() function in Simgear
# 04/03/2009 geoff mclane http://geoffair.net/mperl
setdbgflag.pl
setifdef.pl
# AIM: Given a line on the clipboard, extract, duplicate, and set #ifdef _MSC_VER around it
# and back into the clipboard
sh2htm.pl
# AIM: Parse a shell script, and render in HTML
sha1sum.pl
show-@inc.pl
show-bucket.pl
showalbumdat.pl
# AIM: To find the albums in a gallery photos.dat file ...
# 02/08/2007 - geoff mclane - http://geoffair.net/mperl ...
showanchors.pl
# AIM: Given a HTML file, extract an show each ANCHOR in the file
# 2010/03/25 - geoff mclane - http://geoffair.net/mperl/
showats.pl
# AIM: Read an header.h.in and show ALL variables with @<something>@
# 24/12/2013 geoff mclane http://geoffair.net/mperl
showbuildsrcs.pl
# AIM: Analyse the build.log for sources compiled
showcmd.pl
# AIM: Just out the command arguments found, if any.
showdefs.pl
# AIM: Given a C/C++ page, show items like '#define FOO'
# 21/09/2010 geoff mclane http://geoffair.net/mperl
showdsp.pl
# AIM: Read in a DSW/DSP file, and show results
# 04/04/2012 - Specific switch for specific shows
# 17/10/2010 - More enhancements... like if NO sources
# 01/06/2010 - Lots of enhancements...
# 01/05/2010 geoff mclane http://geoffair.net/mperl
showenv.pl
showerrors.pl
# AIM: Read a cmake bldlog and show errors (and warnings) with the projects name
# 07/08/2013 - extend to show LINK errors also
# 05/08/2013 geoff mclane http://geoffair.net/mperl
showhrefs.pl
# AIM: Given a HTML file, extract, and show HREF (anchor) entries.
# 21/11/2011 - Add -l = load log, -a = show all
# 20/10/2010 - Added alpha sort, and consider -d <dir> to delete those in this directory.
# 14/03/2010 - Lots of IMPROVEMENTS, including batch running... ie parse_arg(list of files)
# 2010/03/22 - strip '#down' off file name before checking
# 20100312 - Some tidying...
# 29/07/2007 - geoff mclane - http://geoffair.net/mperl/index.htm
showincs.pl
# AIM: Read a C/C++ file and show included files...
# 17/05/2013 - Change list spearator depending on OS - win=';', unix=':'
# 17/03/2013 - Add summary at end, and no search for incs in 'windows' includes
# 23/05/2012 - Exclude searching linux includes -
# 12/11/2011 - Maybe some MACRO expansion
# 04/12/2010 - Added scan of directories to find the file...
# 02/12/2010 - Update - added INC directories...
showjava.pl
# AIM: Scan a java source, and show imports and dependencies
showlnks.pl
# AIM: Show public and private user Desktop links
# 29/01/2014 geoff mclane http://geoffair.net/mperl
showlog.pl
# AIM: Read fgms log file, and enumerate pilots
# 17/06/2012 - Initial cut
shownew.pl
# AIM: Quite Specific - Given a cleaned diff file of two file list, show the new
# files added, and a list of those that have changed
showpiperxml.pl
# AIM: VERY SPECIFIC - Quikc output of an XML file contents...
showplayback.pl
# AIM: SPECIFIC - Read the FG playback.xml, and show simple list of 'xml' chunks,
# and then read a 'playback' recording, and show the 'changes' over time...
# 17/12/2010 geoff mclane http://geoffair.net/mperl
showscenery.pl
# AIM: Give a FG sceenery directory, list available chunks, and airports ICAO.btg.gz file
showsln.pl
# AIM: Read a MSVC solution file, and details the project
# 18/12/2013 - Adjust what is shown by 'verbosity'
# 20/05/2013 - Works well ;=)) Time for some improvemments
# 17/05/2013 geoff mclane http://geoffair.net/mperl
showsm01.pl
# AIM: To show my Start Menu in different ways ...
showsrcs.pl
# AIM: Find and display SOURCES from Makefile.am in a FOLDER ...
showsrcs2.pl
# AIM: Find and display SOURCES from the Makefile.am in a FOLDER ...
# and COMPARE that source list with the VCPROJ file
# Show what should be DELETED, and what should be ADDED to the VCPROJ file
# Geoff R. McLane - mailto: geoffair@hotmail.com - 8 December, 2005
# ########################################################################
# just to show how long the program ran ...
showsrcs3.pl
# AIM: Find and display SOURCES from the Makefile.am in a FOLDER ...
# and COMPARE that source list with the VCPROJ file
# Show what should be DELETED, and what should be ADDED to the VCPROJ file
# Geoff R. McLane - mailto: geoffair@hotmail.com - 8 December, 2005
# ########################################################################
# just to show how long the program ran ...
showsymbols.pl
# AIM: Enumerate the namespace sort of 'hash'...
# 04/09/2010 geoff mclane http://geoffair.net/mperl
showuncommented.pl
# AIM: Read an asterisk 'config' file, and just show 'uncommented line = do not start ';'
# 17/06/2012 - Allow multiple files, and add output
showvcincs.pl
# AIM: To find the MSVC 'INCLUDE' direcories
# 04/12/2010 - review
# 14/09/2010 geoff mclane http://geoffair.net/mperl
showwarnings.pl
# AIM: Given an input to a cmake build log file, find the cNNNN warnings,
# gorup, count and list them
# 25/06/2012 geoff mclane http://geoffair.net/mperl
shwaptdatver.pl
# AIM: Given a valid apt.dat.gz file, show the version line
shwdefines.pl
# AIM: Read a file, and find all entires -D<something> or /D<something> and list them
# 20/12/2013 geoff mclane http://geoffair.net/mperl
shwmake.pl
shwmemdbg.pl
# AIM: VERY SPECIFIC - read a _DEBUG memory dump file, and order the block in SIZE
# 10/10/2009 geoff mclane http://geoffair.net/mperl
shwoffset.pl
# AIM: Given a file and an offset, show line or lines with that offset
# 01/03/2014 geoff mclane http://geoffair.net/mperl
shwplay.pl
# AIM: *** SPECIAL *** read a FG 'playback' recording, and show details...
# 19/11/2010 geoff mclane http://geoffair.net/mperl
shwwarnings.pl
# AIM: Read a MSVC build log, and extract the ' warning C4251:'
# 20/12/2013 geoff mclane http://geoffair.net/mperl
sitemap.pl
sitemap02.pl
slippydirs.pl
# AIM: Just some 'tests' on slippy directories, and other slippy map things
# 15/05/2014 - Added /5/23/13/png as another way to enter 'lat lon zoom'
# 15/04/2014 geoff mclane http://geoffair.net/mperl
sln2dsw.pl
# AIM: Read a MSVC7/8/9/?? solution, and vcproj files, and create
# or maybe update an (depreciated, as too hard)
# equivalent DSW/DSP files ...
# 19/05/2008 - Add 'Static Library' DSP header ... still missing 'Dynamic Library'
# 22/04/2008 - Extract DEPENDENCIES from solution file, and add to DSW output
# 17/12/2007 - geoff mclane - http://geoffair.net/mperl
# 14/02/2008 - attempt to get RELATIVE folders correct, both in DSW (and DSP)
sln2dsw02.pl
# AIM: Read solution file (SLN), and extract projects,
# write appropriate DSP file, and finally write DSW file.
# 10/03/2011 - Fix missing function 'write_hash_to_DSP' - try 'write_hash_to_DSP2' in fgdsphdrs02.pl lib
# 14/11/2008 geoff mclane - http://geoffair.net/fg
# based on fgsln2dsw.pl
# 13/07/2011 - Updates
# 2009/08/08 - convert $(Projectname) to the project name
# 13/03/2009 - some problems to be FIXED
# - pthreads.vcproj has a RSC define /d "PTW32_RC_MSC" which does NOT get into the DSP
# - The PLIB vcproj have output to <lib>_d.lib in DEBUG config, NOT put into the DSP
# - lpng/libpng build a Debug/libpng.lib which must be copied to the root as libpngd.lib
# - likewise zip-1.2.3 build Debug/ziplib, which must be copied to the root as zipd.lib
# ====================================================================================
# ###############################################################
sln2std.pl
# AIM: Convert a 'solution' to my 'standard' output
sln2x64.pl
# AIM: Given a MSVC10 solution file, convert to an X64 soltuion set
slnlist.pl
# AIM: Given a MSVC8 SLN file, show the LIST of VCPROJ files it references
# 04/09/2007 - add output of SOURCE files from vcproj files
# 26/04/2007 - geoff mclane - http://geoffmclane.com/mperl/samples/index.htm
slurptest.pl
solve-ok.pl
# AIM: Given a position, decide the track to take to best arrive at a 'circuit'
# Quite specialized!
solve.pl
# AIM: Given a position, decide the track to take to best arrive at a 'circuit'
# Quite specialized!
sortcss.pl
# AIM: Read a file of CSS, in this case taken from my site,
# and 'sort' it - that is put each element together
# 02/08/2013 - have no default input file
# 11/07/2010 - checkout, and added input file name - parse_arg and
# output the tags with width formatting...
# 05/07/2008 geoff mclane http://geoffair.net/mperl specialised
# Decode of CSS file
# Skip C comments - /* ... */
# Starts with *, ., # or character is start of tag
# other tag names can follow after comma (,)
# definition begins with '{', and ends with '}' ...
sortnc.pl
# AIM: Alphabetic sorting, excluding case
sortres.pl
# AIM: Sort a RESOURCE header file
space2tab.pl
# AIM: Convert LEADING spaces to tab
split_words.pl
# AIM: To take a joind word like "ApplePieCustardTart"
# and split it out to "Apple Pie Custard Tart"
# Note combined word HAS TO START with a CAPITAL LETTER - A-Z ...
# Nice taste of iterative calling to complete the job ;=))
# goeff mclane - http://geoffmclane.com - 20070209
#################################################################
srtm-list.pl
# AIM: Given a lat, lon, get the STRM3 list
stat01.pl
# AIM: To check out the power of 'stat' - geoff - 2006.07.11
# 'stat' returns 13 fields ...
# ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
# $atime,$mtime,$ctime,$blksize,$blocks)
# = stat($filename);
# 0 dev device number of filesystem
# 1 ino inode number
# 2 mode file mode (type and permissions)
# 3 nlink number of (hard) links to the file
# 4 uid numeric user ID of file's owner
# 5 gid numeric group ID of file's owner
# 6 rdev the device identifier (special files only)
# 7 size total size of file, in bytes
# 8 atime last access time in seconds since the epoch
# 9 mtime last modify time in seconds since the epoch
# 10 ctime inode change time in seconds since the epoch (*)
# 11 blksize preferred block size for file system I/O
# 12 blocks actual number of blocks allocated
# (The epoch was at 00:00 January 1, 1970 GMT.)
# * Not all a valid on all file systems
# add 'use' statement -
stat02.pl
# AIM: To check out the power of 'stat' - geoff - 2006.07.11
# 13/10/2009 - revisited, and try to fix the errors now...
# This consisted mainly of making is an ($mode & S_item),
# CONTRARY to the FUNCTIONS list in http://perldoc.perl.org/functions/stat.html
# and from : http://kobesearch.cpan.org/htdocs/perl/Fcntl.pm.html
# Amybe this has CHANGED since 2006, when I am sure this was working!!!
# ##############################################################################
# 'stat' returns 13 fields ...
# ($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
# $atime,$mtime,$ctime,$blksize,$blocks)
# = stat($filename);
# 0 dev device number of filesystem
# 1 ino inode number
# 2 mode file mode (type and permissions)
# 3 nlink number of (hard) links to the file
# 4 uid numeric user ID of file's owner
# 5 gid numeric group ID of file's owner
# 6 rdev the device identifier (special files only)
# 7 size total size of file, in bytes
# 8 atime last access time in seconds since the epoch
# 9 mtime last modify time in seconds since the epoch
# 10 ctime inode change time in seconds since the epoch (*)
# 11 blksize preferred block size for file system I/O
# 12 blocks actual number of blocks allocated
# * Not all a valid on all file systems
# 13/10/2009 - But in WIN32, it also seems blksize and blocks are NOT valid, filled in???
# (The epoch was at 00:00 January 1, 1970 GMT.)
# add 'use' statement -
stdintest.pl
stripcols.pl
# AIM: Strip the left number of columns off a file
# 29/06/2010 - Functionality check
# 03/11/2009 - Add more options
# 2009/09/23 - geoff mclane - http://geoffair.net/mperl/
striphtml.pl
striphtml02.pl
# AIM: To strip HTML from a file using HTML::Parser
# some regex that is similar -
# FROM : http://www.trilug.org/pipermail/trilug/Week-of-Mon-20040216/024049.html
# Doing some experimentation, I see that perl is normally greedy, but
# if you postpend a quantifier with ? it turns that off. So, this
# should remove all html tags from a file:
# perl -pi -e 's/<.*?>//g' [filename]
# Unfortunately, the non-greedy operator -- the question mark, is not
# standard to the C library regexp() call, which I'm using. However, the
# following accomplishes something similar (my thanks to 'scalar' on IRC) :
# s/<[^>]+>//g
striphtml03.pl
# AIM: To strip HTML from a file using HTML::Strip
###use strict;
stripleft.pl
# AIM: Input a text file, and strip a number of columns from
# the left side of the file, and output the results
# 14/05/2009 - update
# geoff mclane - nov, 2006
stripleft02.pl
# AIM: Replace stripleft.pl
# 08/09/2011 geoff mclane http://geoffair.net/mperl
stripms.pl
stripms2.pl
stripms3.pl
stripms4.pl
stripms5.pl
stripms6.pl
stripspan.pl
# AIM: Strip <span ...>something </span> from HTML
sublist.pl
# AIM: Give a perl script name, list the 'sub' contained
# Took file decoder from chkperl.pl, but needed to 'fix' a few things
# regarding regex skipping, and adding heredoc handling (which SHOULD be added to chkperl.pl!
# 27/06/2010 geoff mclane http://geoffair.net/mperl
# Subroutine name list - generated by sublist.pl, on 20100627
# set_debug($), pgm_exit($$), prtw($), show_warnings(), YYYYMMDD2($$), get_space_indent($), line_is_heredoc($$),
# process_file($), show_has_ref($), give_help, need_arg, parse_args
# === End sub name list ===
sublist02.pl
# AIM: Give a perl script name, list the 'sub' contained
# Took file decoder from chkperl.pl, but needed to 'fix' a few things
# regarding regex skipping, and adding heredoc handling
# 27/06/2010 geoff mclane http://geoffair.net/mperl
subref.pl
# AIM: To call a function, or set a global, by calling a function ...
substr01.pl
sum.pl
# AIM: Sum of a set of values...
# 15/08/2011 geoff mclane http://geoffair.net/mperl
svnexclude.pl
# AIM: Very specific utility to REMOVE diffs of files in '.svn' folders ...
# 22/10/2007 - geoff mclane - geoffair.net/mperl
svnvers.pl
# AIM: Check a directory, and output the current SVN version number ...
# 26/11/2007 - geoff mclane - http://geoffair.net/mperl
t2html.pl
table2hash.pl
# AIM: Read in a HTML table, and convert to a Perl HASH structure ...
# 29/01/2008 - geoff mclane
table2str.pl
# AIM: VERY SPECIFIC - read a HTML file, extract the 'table', and write it as a structure...
# 01/10/2009 geoff mclane http://geoffair.net/mperl
tanlist.pl
# AIM: List TANGENT of 0 to 360 degrees ...
telnet2fg.pl
# AIM: Attempt a telent (socket) connection to FG, and report the
# aircraft position, if running...
temp.pl
# AIM:
temp1.pl
# AIM:
temp2.pl
# AIM:
temp3.pl
# AIM:
test-bucket2.pl
# AIM: Final debug on Bucket2.pm
# 18/11/2009 geoff mclane http://geoffair.net/mperl
test-eval.pl
# AIM: test generation of variables, and gettting their value
# This would also work for calling subroutines
# 2009/10/24 - geoff mclane - http://geoffair.net/mperl/
test-eval02.pl
test-file-spec.pl
# AIM: Some simple tests of File::Spec
test-hash-ref.pl
test-json.pl
# AIM: Use the perl JSON module to decode a JSON string, and hopefully
# report any errors...
test-time.pl
test-type.pl
test-url-uri.pl
test.pl
# AIM: Various 'test'
test00.pl
# AIM: Used to develop lib_cmakeread.pl
# 02/05/2012 - Looking quite smooth ;=))
test1.pl
# AIM:
test10.pl
test11.pl
test12.pl
test13.pl
test14.pl
test2.pl
# AIM: Just a test scripts
test2bat.pl
# AIM: Try to convert a shell script to a Windows batch file
test3.pl
test4.pl
# AIM: To use my own zip8.bat to get the list of files, within a zip file
# This zip8.bat just uses the command line addin of WINZIP
# @set TEMPWZ="C:\Program Files\WinZip\WZZIP.EXE"
# @%TEMPWZ% %1 %2 %3 %4 %5 %6 %7 %8 %9
# #########################################################
test5.pl
# AIM: just testing some actions using a HASH
# 1. does @hk = keys %hash work? Yes, absolutely
# 2. can a has entry contain an array - like $hash{$file} = @arr
# No, but it can contain a 'reference' to an array, which can be 'anon' ...
# Note below the deep indexing into the reference to a multi-dimensional array
# like - $v = ${@{${@{$hash{$k}}}[$i]}}[$i2];
### note - a reference is NOT really just a pointer to
### since in this case @na only has a scope in this for, and
### its value is changed with each iteration
### so a 'reference' is really a 'copy' of the array.
### To 'prove' this, I clear the arrays, put difference values in each
### but these 'new' values do not appear until I do set_changes ...
### It is clear that 'reference' in Perl has NO SIMILARITY to a 'reference' in C++ !!!
### That begs the question - how do you pass a C++ type 'reference' in Perl?
### That is a 'pointer' to a variable to be changed during the function?
### Of course, the global scope of variable, means the function can 'directly' access,
### and change the global ... so there is not much need to pass a 'pointer to' ...
######################################################################################
##use strict;
test6.pl
#AIM: Test 'package' function
# In general some things work, but LOTS DO NOT ;=((
# Trying to load @stxBI using an external function
# seemed to FAIL, even with push(@main::@stxBI, $txt)
# The only way was to put add_2_array in main,
# and call from the other module using main::add_2_array($$) ...
# Maybe I was doing something wrong???
#
test7.pl
test8.pl
# AIM: download and write a file ...
# carefully checking the LINE ENDINGS contained in the file
test9.pl
test_req1.pl
test_x.pl
testbits.pl
testfish.pl
testiso.pl
testiso2.pl
testpage.pl
# AIM:
tests2d.pl
# AIM: Just a test module
testsock.pl
testsock1.pl
thread1.pl
thread2.pl
tidycmp.pl
# AIM: To DOWNLOAD the accessibility table from the web site
# http://www.aprompt.ca/Tidy/accessibilitychecks.html
# and compare its contents to Tidy's accesscases.txt
tidycmp02.pl
# AIM: To DOWNLOAD the accessibility table from the web site
# http://www.aprompt.ca/Tidy/accessibilitychecks.html
# parse the html, extracting the HTML test file link
# Download the link, advise if FAILED,
# else write the file to an OUTPUT folder,
# converting the line endings to DOS line endings ...
# and compare its contents to Tidy's accesscases.txt
# NOTE: With $dbg1 == 0, there can be quite LONG delays before NEXT output ...
# Likewise if $dbg2 == 0, and/or $dbg3 == 0 - it looks like NOTHING is happening!!!
# #############################################################################
tidytxt.pl
# AIM: To use Tidy to check some text
# try to get stdin working ...
# 03/09/2007 geoff mclane - http://geoffair.net/mperl
#use strict;
tidyword.pl
# AIM: Take a tidied word filtered html and remove MsoNormal, MsoPlainText calls paragraphs,
# That is no margin paragraphs separated by a 'blank' become 'normal' paragraphs, and
# paragraphs following each other become one paragraph with <br> separating the lines
# 06/05/2007 - geoff mclane - geoffmclane.com
timing.pl
# AIM: Test high resolution timing
# 17/12/2008 geoff mclane http://geoffair.net/mperl
toclipboard.pl
# AIM: Copy the command given to the clipboard. If no command, show clipboard
touch.pl
# AIM:
#------------------------------------------------------------
# touch.pl
# from : http://www.cse.scu.edu/~tschwarz/COEN252_05/Homeworks/hw3.html
#
# This script is proof of concept code, demonstrating the ability
# to arbitrarily modify the creation, last access and last
# modification dates of files.
#
# The only required module is Win32::API::Prototype, from Dave Roth's
# site: ftp://ftp.roth.net/pub/ntperl/Prototype
# OR
# perl ppm.pl install http://www.roth.net/perl/packages/win32-api-prototype.ppd
# ppm install http://www.roth.net/perl/packages/win32-api-prototype.ppd
#
# Usage: [perl] touch.pl [filename]
# The script has a hard-coded target date; the user can
# go to that section of code and modify it accordingly.
#------------------------------------------------------------
trim.pl
trimdf01.pl
# AIM: To input the output of a directory command,
# and output a TRIMMED version ...
# a) remove blank lines ...
# b) remove leading spaces off lines
# c) remove lines -
# i. Volume in drive C has no label.
# ii. Volume Serial Number is D833-AEFA
# iii. 1 File(s) 7,117 bytes
# iv. Total Files Listed:
# v. 163 File(s) 2,271,636 bytes
# vi. 0 Dir(s) 176,651,669,504 bytes free
# 2009/09/28 - called by cleandir.bat file, so some improvements
# 2006/11/25 - geoff mclane - http://geoffair.net/mperl/
txfdump.pl
txt2htm02.pl
txt2html.pl
# AIM: Very SPECIFIC
typefile.pl
# AIM: Given an input file, output without comments /* .... */ or
# lines beginning /\s*\/\/
typeglob-assignment.pl
typeglob-name-package.pl
udp-client.pl
udp-server.pl
unicode.pl
# AIM: Generate a BIG SEQUENCE of UNICODE values, and put
# it all in a HTML page.
# 02/09/2008 - put it in a table, and add jump links
# 07/09/2007 - geoff mclane - http://geoffair.net
unix-time.pl
unixit.pl
# AIM: Given an input file, convert to unix/linux form ...
unlink.pl
# AIM: To do a simple test on built in function, unlink ...
# Note no -w above, else get additional warnings ...
utf_16_BOM.pl
vartypes.pl
vc6srcs01.pl
# AIM: Given a DSW solution file, search set of DSP and list sources.
# and given a singel DSP, list sources
# 16/11/2007 - geoff mclane - geoffair.net/mperl
vc8cmp-01.pl
vc8cmp-02.pl
vc8config.pl
# AIM: To read a config.h.in file, and write a config.h, using
# the include PATH of MSVC8
vc8srcs01.pl
# AIM: Source list from MSVC8 project file
# First try, using XML::Simple, so
vc8srcs02.pl
# AIM: Source list from MSVC8 project file
# but this version starts with the SOLUTION (.sln) file,
# finds the PROJECT (.vcproj), and does a source compare
# with the relative directories given in there ...
# First try, using XML::Simple, so
vc8srcs03.pl
# AIM: Source list from MSVC8 project file
# but this version starts with the SOLUTION (.sln) file,
# finds the PROJECT (.vcproj), and gets the PROJECTS, and
# the SOURCES from there, and lists them
# 2010/04/15 - add list of 'MISSED' files at end
# 13/11/2007 - geoff mclane - http://geoffair.net/mperl
vc_cmp.pl
# AIM: Compare 2 vcproj files
vc_sln.pl
# AIM: Scan a SLN file, and report contents
vcdelcfg.pl
# AIM: VERY SPECIFIC - Given a VCPROJ file, and a configuration name
# delete that configuration. If just given the VCPROJ file, just list
# existing configuration...
# 28/05/2010 geoff mclane http://geoffair.net/mperl
vcfix.pl
# AIM: VERY SPECIFIC - Given a VCPROJ file, and a configuration name
# fix that configuration... as specifically shown below
# 29/05/2010 geoff mclane http://geoffair.net/mperl
vcopts.pl
# AIM: Show compiler defines in a vc project
# 22/02/2012 - Added 'Yc' and 'Yu' compiler switches
vcproj01.pl
vcproj02.pl
# AIM: To load FG vcproj files, and extract the SOURCE files in there ...
# =======================================================================
vcproj03.pl
# AIM: Parse a VCPROJ file - get_xml_source() is the service in sln2dsw.pl
vcproj04.pl
# AIM: To scan a VCPROJ file, and show the results
# 20090912 - add display of CWD, if can not find INPUT file name...
# This uses the services in fgscanvc.pl, to standardise the processing of a VCPROJ file
# so this is very different to vcproj03.pl, which had its own services to do the scan.
# 2009/09/22 - separarate into multiple 'temp' DSP outputs, using -NEW_PROJECT_NAME-
# but also avoid overwrtting previous out of same name...
# 2009-06-05 also try to attempt to output what the project will create... exe,lib,dll,...
# 05/12/2008 geoff mclane http://geoffair.net/mperl
vcproj05.pl
# AIM: To scan a VCPROJ file, and show the results, and write (temp) DSP/DSW files.
# Since this is all about MSVC things, no attempt has been made to run it in unix.
# 21/05/2013 - Small fix - was putting SRCS twice add_library(
# 17/05/2013 - Add -o option to set output directory of CMakeLists.txt
# 29/07/2012 - Another try at doing a cmake output - getting messy
# 19/06/2012 - Added <DisableSpecificWarnings>4996;4013;4018;4024;4047;4244</DisableSpecificWarnings>
# 10/04/2012 - Extend to MSVC10 *.vcxproj files - looking good 14/04/2012
# 19/01/2012 - Output the 'temp' DSP written
# 04/11/2011 - Warn about wild card inputs...
# 28/10/2011 - Fix like tempcopydsp.bat to COPY the DSW
# 21/10/2011 - Add an input repsponse file - $in_input_file,...
# 18/10/2011 - Reduce output if NOT verbose!
# 13/07/2011 - If a DSP destination directory given, try to FIX all DSP file source relative to this directory
# 01/12/2010 - Some updates for VC90
# 24/11/2010 - Add in VC10 support -
# 04/08/2010 - More special fixes for various things...
# 2010/07/30 - Special fix of Simgear.cs to SimGear-cs to suit my system... see $dbg_sl_14
# 2010/05/31 - For FLTK project, include *.fl in 'C' sources
# 2010/05/01 - Fixed -dsp=. (ie a relative input) to absolute using like $sarg = File::Spec->rel2abs($tmp); # get ABSOLUTE path of output
# 2010/04/23 - Add -ll to load log, and -fix-rel, to FIX the relative source and /I to the dsp output directory
# 2010/04/18 - Remove WARNING: DOES NOT CONTAIN(12) 'Filter'?, and use a default filter
# 2010/03/08 - Remove write tempvcx.xml from scanvc.pl, or only to perl base directory...
# 2010/03/01 - if vcproj contains IgnoreDefaultLibraryNames="MSVCRT", add /nodefaultlib:"MSVCRT" to DSP
# Add this to the -NEW_OUT- substitution parameter - that is to the # ADD LINK32 line.
# Can be DIFFERENT per configuration. Altered scanvc.pl to collect this, and fgdsphdrs03.pl to do substitution
# 2010/01/16 - Feeling confident of scans and dsp written - add write actual replacement!
# BUT first, begin to use File::Spec...
# 2009/11/11 - Final tidying up - seems to work fine...
# 2009/10/20 - support MULTIPLE configurations - not compatible with previous versions
# which alwasy had only 2 configurations - Debug and Release.
# 20090912 - add display of CWD, if can not find INPUT file name...
# This uses the services in scanvc.pl, to standardise the processing of a VCPROJ file
# so this is very different to vcproj03.pl, which had its own services to do the scan.
# 2009/09/22 - separarate into multiple 'temp' DSP outputs, using -NEW_PROJECT_NAME-
# but also avoid overwrtting previous out of same name...
# 2010/01/14 - add a DSP COMPARE, if one already exist, and if requested...
# 2009-06-05 also try to attempt to output what the project will create... exe,lib,dll,...
# 05/12/2008 geoff mclane http://geoffair.net/mperl
vcprojlist.pl
# AIM: Parse a vcproj file, and list the sources is contains.
# 07/03/2008 - add show of LIBRARIES used for each configuration
# 15/05/2007 - geoff mclane - http://geoffmclane.com/mperl/index.htm
vcprojlist02.pl
# AIM: Parse a vcxproj file, showwing information
# see earlier vcprojlist.pl for a pevious attempt
# 26/08/2013 geoff mclane http://geoffair.net/mperl
wakeup-call.pl
whereis.pl
# AIM: Search for a given header on known paths
# 07/02/2013 - Add -a <drive> to search entire DRIVE/Directory recursively...
# 26/12/2012 - First cut
wordindex01.pl
# AIM: Given a FILE, load it in WORD, extract the text, and build an alphabetic
# index of words ...
# Uses Word OLE engine
# see http://www.ngbdigital.com/perl_ole_word.html
# 21/08/2007 geoff mclane - http://geoffair.net/mperl
#
wsg842mercator.pl
# AIM: Convert a WSG84 lon,lat pair to a a spheical mercator point
# 31/10/2011 geoff mclane http://geoffair.net/mperl
# from : http://www.mail-archive.com/gdal-dev@lists.osgeo.org/msg03050.html
# /* spherical mercator for Google, VE, Yahoo etc
# * epsg:900913 R= 6378137
# * x = longitude
# * y= R*ln(tan(pi/4 + latitude/2)
# */
# Also see : http://code.google.com/p/gepy/source/browse/trunk/tile.py
# Coordinate extent of Earth in EPSG:900913:
# [-20037508.342789244, -20037508.342789244, 20037508.342789244, 20037508.342789244]
# The constant 20037508.342789244 comes from the circumference of the Earth in meters,
# which is 40 thousand kilometers, the coordinate origin is in the middle of extent.
# In fact you can calculate the constant as: 2 * math.pi * 6378137 / 2.0
# Polar areas with abs(latitude) bigger then 85.05112878 are clipped off.
#What are zoom level constants (pixels/meter) for pyramid with EPSG:900913?
# whole region is on top of pyramid (zoom=0) covered by 256x256 pixels tile,
# every lower zoom level resolution is always divided by two
# initialResolution = 20037508.342789244 * 2 / 256 = 156543.03392804062
xml-list.pl
# AIM: Given an XML file, output a list of elements
# 08/04/2013 geoff mclane http://geoffair.net/mperl
xml01.pl
xml02.pl
xml03.pl
xml04.pl
xml05.pl
xml06.pl
xml07.pl
xml08.pl
# AIM: To explore the XML:Simple interface ...
# use module
# 22/12/2011 - A fresh look, and seem to have got the jist now... the load is quite SLOW,
# but each item can be enumerated. Seems ForceArray does quite little, except force each
# indent level to begin with an ARRAY
xml2h01.pl
# AIM: Color code XML file data
# 10/11/2007 - geoff mclane - http://geoffair.net/mperl
xml2json.pl
xml2json02.pl
# AIM: Convert an XML file to a JSON file
# 01/03/2014 geoff mclane http://geoffair.net/mperl
# This version is bases on the oneliner from : http://blogs.perl.org/users/jhannah_mutation_grid/2010/09/one-liner-xmlperljson.html
xml_test.pl
xmldom01.pl
xmldom02.pl
# AIM: Like xmldom01.pl, some more experiments with XML::DOM ...
xmlfgair.pl
# AIM: Read FG AirCraft -set.xml file, and show details...
# 16/04/2013 - Further improvments, more outputs from XML
# 19/02/2013 - Add help and imporve UI and output
# 06/02/2013 - Add 'author' and 'rating'
# 13/01/2010 - Initial cut
xmlfgkey.pl
xmlfgkey2.pl
xmlfgkey3.pl
xmlfix01.pl
# AIM: Read an XML file, and add a title from the split of the file name
#
xmlfix02.pl
# AIM: exploring add keyattr => [key, tag] to new
# BUT AS FAR AS I CAN TELL THEY ARE EXACTLY THE SAME!!!
# can not use 'strict' with [key, tag] ...
# 25/08/2007 geoff cmalne - geoffair.net/mperl/
#use strict;
xmllibxml01.pl
xmlparse.pl
# AIM: 08/10/2013 -Experiments with XML::Parser
# 28/02/2014 - More experiments, on some ICAO.xml from the LDS767 zip (C:\Users\user\Downloads\LDS767)
# More successful, but STILL TOO MESSY ;=(( There MUST be another way to parse XML?????????
# The parser inserts BLANK HASHES, followed by a strange '0', and adds whitespace text!!!
xmlreline.pl
# AIM: Simple read and re-line an XML file input, write to output, if one given
# 20/12/2011 - Review only - no major changes
xmlsax.pl
# AIM: Diagnose an error output
# "could not find ParserDetails.ini in C:/Perl/site/lib/XML/SAX"
# 28/02/2014 - from : http://johnbokma.com/perl/installing-xml-sax.html
# suggested running
# perl -MXML::SAX -e "XML::SAX->add_parser('XML::SAX::PurePerl')->save_parsers()"
# that created the ParserDetails.ini
# And the same site gave this program to enumerate the parser
xmlsaxmail01.pl
xmlsimple.pl
# AIM: Explore XML simple interface ...
# 2009/10/15 - try again...
# 07/06/2008 - geoff mclane - http://geoffair.net/mperl/
# =====================================================================
# use XML::Simple;
# my $file = 'files/camelids.xml';
# my $xs1 = XML::Simple->new();
# my $doc = $xs1->XMLin($file);
# foreach my $key (keys (%{$doc->{species}})){
# print $doc->{species}->{$key}->{'common-name'} . ' (' . $key . ') ';
# print $doc->{species}->{$key}->{conservation}->final . "\n";
#}
# Other references
# http://search.cpan.org/dist/XML-Simple/lib/XML/Simple/FAQ.pod#How_do_I_use_XML::Simple?
# http://www.ibm.com/developerworks/xml/library/x-xmlperl1.html?ca=dgr-lnxw97XML-Simple
# $VAR1 = {
# 'passwd' => 'longNails',
# 'user' => 'freddy',
# 'books' => {
# 'book' => [
# {
# 'title' => 'Cannery Row',
# 'author' => 'Steinbeck'
# @{$config->{books}->{book}}[0]->{title} or 'Cannery Row'
# =====================================================================
xmlsimple02.pl
# AIM: Further experiements with XML:Simple
# See xmlsimple.pl for earlier experiments...
xmlsimple03.pl
# AIM: Further experiments with XML::Simple
# 28/02/2014 - Another try... quite successful... creates a good perl reference
# See xmlsax.pl for resolving a problem "could not find ParserDetails.ini in C:/Perl/site/lib/XML/SAX"
# 01/03/2014 - After LOTS of effort, which got very close to completion
# decide to abandon the conversion to JSON
# The module remains a good XML parser, and value viewer
#
# 08/10/2013 - Initial cut
xmltwig01.pl
xmltwig02.pl
# AIM: Using the XML::Twig interface, especially on VCPROJ files
# Develop some Twig functions, to see how long it takes ...
# 28/11/2007 - geoff mclane - http://geoffair.net/mperl
xmlwin32.pl
# AIM: Parse an XML document using Win32::OLE ...
# references : http://msdn2.microsoft.com/en-us/library/ms753759.aspx
# http://www.perl.com/pub/a/2001/04/17/msxml.html
# 02/06/2007 - geoff mclane - geoffair.com/mperl/index.htm
xmlwrap02.pl
# AIM: Exploring XML::Parser::Wrapper, loading from file ...
# 28/07/2008 geoff mclane http://geoffair.net/mperl
xmlwrap03.pl
# AIM: Exploring XML::Parser::Wrapper, loading from file ...
# specifically parsing a MSVC8 VCPROJ file
# 28/07/2008 geoff mclane http://geoffair.net/mperl
xmlwrapper.pl
# AIM: Test the XML::Parser::Wrapper interface ...
# 2009/10/16 - Installed via PPM, XML-Parser-Wrapper, in DELL02...
# and test on a VCPROJ file
# 07/28/2008 - geoff mclane - http://geoffair.net/mperl/
xpnav.pl
# AIM: SPECIALISED: Just reading x-plane earth_nav.dat, and check every entry
# 23/11/2013 geoff mclane http://geoffair.net/mperl
zip2nsis.pl
# AIM: Take output form WinZip command line tool, and convert to NSIS include script
# 06/06/2012 - Initial cut
zipindex.pl
# AIM: To read the INPUT directory, and generate a HTML file
# to allow down load of all the ZIPS files found there ...
zipindex02.pl
# AIM: To read the INPUT directory, and generate a HTML file
# to allow down load of all the ZIPS files found there ...
# 20070127 - fix for get_nn only
zipindex03.pl
# AIM: To read the INPUT directory, and generate a HTML file - a zip index -
# to allow down load of all the ZIPS files found there ...
# 21/04/2008 - Add a $very_simple flag to do JUST the zip list, w/o javascript
# 08/01/2008 - Put the information javascript into an external file
# 19/08/2007 - Make more general than 'my' source zips, with $add_desc, $msvc_list, and
# add $add_mo_2 to do onmouseover on (reversed) alphabetic list.
# 09/06/2007 - update: either remote (depreciated) or local linking
#
# Also generates a javascript for showing all the files in the zip
# Description may have to be added for NEW items, but existing items,
# the description will come from zipdesc.txt ...
# and a zipexclude.txt for excluded files ...
# 20070127 - Add generation of a 'remote' index, similar to the 'local' index,
# except all the links refer back to macpcfirstaid.com/zips site ... enable $writefil2,
# and set $def_html2 and $remlink (depreciated)
# and fixed get_nn() ...
# *************************************************************************************
# NOTE WELL: the sub get_zip_text($zipfile) uses MY PERSONAL zip8.bat to get CONTENTS
# NOTE WELL: This is MY zip listing BAT file, using the WINZIP
# NOTE WELL: command line interface. THIS MUST BE ADJUSTED TO GET EQUIVALENT RESULTS!!!
# *************************************************************************************
# geoff mclane - http://geoffair.net - 27 January, 2007
zipindex04.pl
# AIM: Given a folder, prepare a HTML table of zips, Date Link Size MD5
# This is a COMPLETE REWRITE of zipindex03.pl...
# 07/11/2011 - Include links for files like fgfs-data-03.zip.txt, if contains a MD5 string
# 05/11/2011 - Fix zip count in output HTLM, and ADD alphabetic list option (nocase)
# 25/04/2011 - Remove 'Not zip [' to $dbg_01
# 22/05/2010 - add ???
# 04/05/2010 geoff mclane http://geoffair.net/mperl
ziplist.pl
# AIM: Given a FOLDER, prepare a zip-list file, listing all ready for ZIPPING,
# but excluding certain files, per options
# 29/03/2012 - Initial cut
ac3dfile-ok.pl - library
# AIM: Read an parse an AC3D file
# 11/05/2013 - some UI improvements
# 05/05/2013 geoff mclane http://geoffair.net/mperl
ac3dfile.pl - library
# AIM: Read an parse an AC3D file
# 22/07/2013 - add directory scan
# 11/05/2013 - some UI improvements
# 05/05/2013 geoff mclane http://geoffair.net/mperl
amfile01.pl - library
astro.pl - library
# AIM: SPECIFIC - Load xplane earth_astro.dat and output to csv file
awy2csv.pl - library
# AIM: Read X-Plane (Robin Pell) earth_awy.dat and output as CSV and json to
# a target directory
# 16/02/2014 geoff mclane http://geoffair.net/mperl
bucket.pl - library
# AIM: Give a lat lon, show the bucket
# 09/01/2013 - Add index to lat lon
# 27/09/2011 geoff mclane http://geoffair.net/mperl
calc-tile.pl - library
chkcmake.pl - library
# AIM: Given an input folder, or input file, follow the CMakeLists.txt files
# 26/04/2012 - If there exists a folder 'CMakeModules' load ALL from here -
# It SEEMS these are AVAILABLE whether a specific 'INCLUDE(modulename)' or NOT is given!
# 22/04/2012 - Some improvements...
# 2012-01-29 - Run in Ubuntu and Windows
# 25/10/2011 geoff mclane http://geoffair.net/mperl
chkmain.pl - library
# AIM: Read a C/C++ file and check for main()
# 2010-07-07 - Some tidying when used in makesrcs.pl
# 20090911 - version 2 with output indicator
# 20090828 - check for quotes "...", and only WARN if could have been in quotes
# 21/11/2007 - geoff mclane - http://geoffair.net/mperl
# check_for_main - check for main()
chkrt.pl - library
# AIM: Check the RUNTIME of -
# DSW set of files MSVC6
# DSP single file MSVC6
# SLN set of files MSVC7 or 8
# vcproj single file MSVC7 or 8
# 11/09/2011 - When changing the RUNTIME, write a batch file to do the COPY of the NEW...
# and add the ability to CHANGE the 'CharacterSet' ="1" for UNICODE, ="2" for Multibyte, ="0" for Not set
# 19/08/2011 - Add --depends (-d) switch, to show dependents
# 17/08/2011 - Add file name to 'RuntimeLibrary NOT FOUND!' warning, and EXCLUDE some OSG cmake vcproj files
# 22/04/2011 - Added 0 => 'MAKEFILE', # 20110422 - added this type
# 03/04/2011 - Add ConfigurationType output, shown if -v1, plus other displays if v2,5,9 (for vcproj)
# 10/03/2011 - Add wild card input, like *.sln, or *.dsp
# 11/08/2010 - Added File::Spec->rel2abs to convert any relative input to absolute
# 03/07/2010 - For vcproj at least, show OutputFile=
# 08/06/2010 - Just a little tidying, and UI enhancements...
# 14/11/2008 - Add show of sources, and add and use prtw();
# 24/09/2007 - Also SHOW output file ...
# ############################################################
cmpapfreqs.pl - library
# AIM: Give two apt.dat files, collect and compare frequencies listed for each airport
# handle 850 and 1000 apt.dat formats
cntnavtypes.pl - library
# AIM: *** VERY SPECIFIC *** Count x-plane navaids in earth_nav_dat
colors2.pl - library
# AIM: To develop a color map to use with DEM elevations mapping
# Esentially two groups
# BLUE - Ocean
# RED/ORANGE/YELLOW/GREEN - Land
# goeff mclane - http://geoffmclane.com - 20070209
#################################################################
colour2.pl - library
colours.pl - library
com_03.pl - library
convstr-refout.pl - library
currencyISO.pl - library
debug.pl - library
eppearl.pl - library
extra.pl - library
extra2.pl - library
fg-navaid.pl - library
fg_server_xml2.pl - library
fg_sqaure-ok.pl - library
# AIM: Through a TELNET connection, fly the aircraft on a course
# 16/07/2011 - Try to add flying a course around YGIL, using the autopilot
# 15/02/2011 geoff mclane http://geoffair.net/mperl
fg_square.pl - library
# AIM: Through a TELNET connection, fly the aircraft on a course
# 03/04/2012 - More changes
# 16/07/2011 - Try to add flying a course around YGIL, using the autopilot
# 15/02/2011 geoff mclane http://geoffair.net/mperl
fg_wsg84.pl - library
# AIM: Emulate various SG services...
# fg_geo_inverse_wgs_84($lat1, $lon1, $lat2, $lon2, $ref_az1, $ref_az2, $ref_s);
# Convert two lat,lon cordinates, to distance, and azimuth, and
# fg_geo_direct_wgs_84($lat1, $lon1, $az1, $s, $ref_lat2, $ref_lon2, $ref_az2 );
# Calculate from one lat,lon coordinate, on azimuth, for distance, to second lat,lon
# lat,lon,asimuth in degrees, distance in meters.
# 08/03/2013 - Only if set_debug_on(1) output the FAILURE message
# 08/03/2013 - Fix an iternation bug in fg_geo_inverse_wgs_84()
# 17/12/2008 geoff mclane http://geoffair.net/mperl
fgdsphdrs.old.pl - library
fgdsphdrs.pl - library
fgdsphdrs02.pl - library
fgdsphdrs03.pl - library
fgscanvc-ok.pl - library
fgscanvc.pl - library
fgscanvc02.pl - library
fgscanvc03.pl - library
fgsln2dsw.pl - library
# AIM: Read a MSVC7/8/9/?? solution, and vcproj files, and create
# or maybe update an (depreciated, as too hard)
# equivalent DSW/DSP files ...
# 26/10/2008 - more tidying, and writing dsplist.txt file
# 25/09/2008 - massive improvements for parsing PREVIOUS solutions files
# most changes extracted from fgslnlist.pl ...
# 19/05/2008 - Add 'Static Library' DSP header ... still missing 'Dynamic Library'
# 22/04/2008 - Extract DEPENDENCIES from solution file, and add to DSW output
# 14/02/2008 - attempt to get RELATIVE folders correct, both in DSW (and DSP)
# 17/12/2007 - geoff mclane - http://geoffair.net/mperl
fgslnlist.pl - library
# AIM: Given a MSVC SLN file, show the LIST of VCPROJ files it references
# add saving of the SOURCE files from vcproj files
# potentially scan all directroies, and show source files NOT present in VCPROJ files
# 23/09/2008 - write 'cfg' file for each project, and a
# dependency file ...
# The general processing consists of reading the vcproj xml, and buidling a set of
# has files, under each configuration given ($conf), and at the end, collect all
# the hashed information and store in a single hash, %v6_refall, where the keys ($mask) are
# the project|configuration|runtime - $proj|$conf|$rtime, where $conf is say Win32|Debug
# so we end with $v6_refall{$mask} = [@allarr]; # COPY the ARRAY to the HASH
# The @allarr itself consists of $reserved_word=$item_information
# push(@allarr, "$libraries=[$cdefs]"); from %v8_depend
# push(@allarr, "$defines=[$cdefs]"); from %v8_link (poorly names hash!)
# push(@allarr, "$includes=[$cincs]"); from %v8_includ, etc ... for
# $libpath from %v8_libdep, $outputs from $v8_config{$conf}, $linkout from $v8_linkout{$conf}
# Each %v8_<something> is cleared for each vcproj parsed, in fg_clear_proj_files
# 27/09/2008 added new $postevt from %v8_postbuild{$conf} = say - a TAB separates commands
# PostBuild_Desc=[Copy exe] PostBuild_Cmds=[copy Release\*.exe bin\. copy test.h bin\.]
# ###################################################################################
fgutils.pl - library
fgutils02.pl - library
fgvc2dsp.pl - library
# AIM: Process a VCPROJ file, extract SOURCES and information, and write DSP file
# 28/10/2008 - Rewrite of fgsln2dsp.pl, processing just ONE VCPROJ file,
# and writting a (temporary) DSP file ...
findap03.pl - library
# AIM: Read FlightGear apt.dat, and find an airport given the name,
# 02/07/2014 - Add -a to output xgraph anoo for airports/runways
# 29/05/2014 - Add -S to show ALL navaiad components - $ALLNAVS
# 21/05/2014 - Show apt.dat used
# 16/08/2013 - Add -out file to output ap text, and nav if -s, to a file.
# 10/04/2013 - Add -xml to output an ICAO.threshold.xml file
# 08/04/2013 - Point to the latest apt.dat.gz - 2.10
# 16/11/2011 - A little more information if -v9
# 16/09/2011 - Fix bug $$g_acnt to $g_acnt about line 650
# 02/05/2011 - Add the tile INDEX to the fg=<chunk>/<tile>/index
# 21/02/2011 - Add AMSL (Airport altitude) to airport output
# 20/02/2011 - If VERB1, add runway center, if VERB2, add runway ends
# 09/02/2011 - Add more information about runways.
# 25/01/2011 - If the raw input looks like a 4 letter ICAO, then search for that
# 29/12/2010 - Add altitude, and frequencies, to airport display ($aalt)
# 15/12/2010 - Fix in the display of the FG CHUNK - now show chunk/tile path, and rwy opp nums
# 26/11/2010 - No show of navs if search a/p, and none found
# 12/11/2010-11/11/2010 - Rel 03 - check out... reduce noise...
# 09/11/2010 - Some UI enhancements... Skip NAV version line, ... FIX20101109
# 17/08/2010 - Fix for windows command -latlon=5,10 becomes -latlon 5 10
# 13/02/2010 - Change to using C:\FGCVS\FLightGear\data files...
# 18/11/2009 - Added Bucket2.pm, to show bucket details - OOPS, would NOT work
# 18/12/2008 - Used tested include 'fg_wsg84.pl' for distance services
# 12/12/2008 - Switch to using DISTANCE, rather than DEGREES, for searching
# for close NAVAIDS ... Add a -range=nn Kilometers
# 19/11/2008 - Added $tryharder, when NO navaid found
# updated 20070526 fixes to run from command line
# Updated 20070405 to parse inputs, added help,
# 20061127 - Use gz (gzip) files directly from $FG_ROOT
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20061127
findapX.pl - library
# AIM: Read X-Plane (Robin Pell) apt.dat, and find an airport given the name,
# 21/08/2013 - Also output the airport frequency list
# 09/04/2013 - Add -2fg to output the found airport in FG apt.dat 8.10 format
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20100801
findapXok.pl - library
# AIM: Read X-Plane (Robin Pell) apt.dat, and find an airport given the name,
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20100801
findaps-win.pl - library
# AIM: There is a BIG findap[nn].pl - This is a SIMPLER version
findaps.pl - library
# AIM: There is a BIG findap[nn].pl - This is a SIMPLER version
# 14/04/2013 - Use later fgdata 2.10
# 19/05/2012 - Add more output according to verbosity
# 20/03/2012 - On help output the apt.dat file name
# 20/01/2012 - Output airport names correctly 'cased', and FIX sub not_on_track($)
# and add nav, fixes and airways loads
# 2011-12-12 - Also compiled and run in Ubuntu, and added -m num to change output count
findapxok2.pl - library
# AIM: Read X-Plane (Robin Pell) apt.dat, and find an airport given the name,
# 09/04/2013 - Add -2fg to output the found airport in FG apt.dat 8.10 format
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20100801
gendbgcode.pl - library
# AIM: Add DEBUG to a C/C++ code file
# 01/08/2008 geoff mclane http://geoffair.net/mperl
genentities.pl - library
# AIM: To prepare a HTML page, with _ALL_ entities up to 32767
# 11/30/2008 - geoff mclane - http://geoffair.net/mperl/
getvcdirs.pl - library
htmllib.pl - library
# AIM: To process a HTML file, parse HTML elements, and return hash reference
# 2010/04/13 - looking good...
# 2010/04/12 - geoff mclane - http://geoffair.net/mperl/
htmltools.pl - library
# AIM: HTML tools - utility functions - 2006-08-26
# to include this, must declare @hrefs and @imgs if
# 20100312 - collecthrefs - remove trailing '"', if present
# collecthrefs( $txt, 1 ) or collectimgs( $txt, 1 ) resp. called
# set added 2009-06-24
# inline_clean_paras($) inline_clean_td($) remove_empty_paras($) remove_doctype($)
# and clean_line_with_wrap($) - and added $htmldbg8 to kill debug outputs
imgsize.pl - library
# AIM: Use external imagemagick 'identify.exe' to get an image SIZE geometry
# Services: im_get_image_size( file_name ); returns geometry nnnnxnnnn
# im_get_image_width( geometry ); returns WIDTH
# im_get_image_height( geometry ); returns HEIGHT
# 21/08/2007 geoff mclane http://geoffair.net/mperl
lib_acscan-new.pl - library
lib_acscan.pl - library
lib_amscan-bad.pl - library
lib_amscan-new.pl - library
lib_amscan.pl - library
lib_chkmain.pl - library
# AIM: Read a C/C++ file and check for main()
# 18/03/2014 - Maybe make note if main() is preceeded by an #ifdef TEST
# 2010-07-07 - Some tidying when used in makesrcs.pl
# 20090911 - version 2 with output indicator
# 20090828 - check for quotes "...", and only WARN if could have been in quotes
# 21/11/2007 - geoff mclane - http://geoffair.net/mperl
# Services:
# chkmain($file,$refarray)
# check_for_main - check for main()
lib_cmake-ok.pl - library
lib_cmake.pl - library
lib_cmakeread.pl - library
lib_confscan.pl - library
lib_css.pl - library
lib_dsphdrs.pl - library
lib_dspscan.pl - library
lib_fgio.pl - library
# AIM: Functions for a TELNET connection to fgfs
# 24/09/2011 geoff mclane http://geoffair.net/mperl
# List: # fgfs_connect, fgfs_disconnect, fgfs_get, fgfs_get_K_ah, fgfs_get_K_hh, fgfs_get_K_locks,
# fgfs_get_K_pa
# fgfs_get_K_pm, fgfs_get_K_ra, fgfs_get_K_rm, fgfs_get_adf, fgfs_get_adf_active
# fgfs_get_adf_stdby, fgfs_get_aero, fgfs_get_agl, fgfs_get_alt, fgfs_get_aspd_kts
# fgfs_get_comm1, fgfs_get_comm1_active, fgfs_get_comm1_stdby, fgfs_get_comm2, fgfs_get_comm2_active
# fgfs_get_comm2_stdby, fgfs_get_comms, fgfs_get_consumables, fgfs_get_coord, fgfs_get_desc
# fgfs_get_eng_rpm, fgfs_get_eng_rpm2, fgfs_get_eng_running, fgfs_get_eng_running2
# fgfs_get_eng_throttle, fgfs_get_eng_throttle2, fgfs_get_engines, fgfs_get_environ
# fgfs_get_fdm, fgfs_get_fuel1_imp, fgfs_get_fuel1_us, fgfs_get_fuel2_imp, fgfs_get_fuel2_us
# fgfs_get_fuel_kgs, fgfs_get_fuel_lbs, fgfs_get_gps, fgfs_get_gps_alt, fgfs_get_gps_gspd_kts
# fgfs_get_gps_lat, fgfs_get_gps_lon, fgfs_get_gps_track, fgfs_get_gps_track_true
# fgfs_get_gspd_kts, fgfs_get_hdg_bug, fgfs_get_hdg_mag, fgfs_get_hdg_true, fgfs_get_mag_var
# fgfs_get_metar, fgfs_get_nav1, fgfs_get_nav1_active, fgfs_get_nav1_radial, fgfs_get_nav1_stdby
# fgfs_get_nav2, fgfs_get_nav2_active, fgfs_get_nav2_stdby, fgfs_get_position, fgfs_get_root
# fgfs_get_sim_info, fgfs_get_w_time, fgfs_get_wind_east, fgfs_get_wind_heading
# fgfs_get_wind_north, fgfs_get_wind_speed, fgfs_send, fgfs_set, fgfs_set_hdg_bug
# get_curr_Klocks, get_curr_comms, get_curr_consumables, get_curr_engine, get_curr_env
# get_curr_gps, get_curr_posit, get_curr_sim, get_current_position, get_exit, get_position_stg
# got_flying_speed, got_keyboard, in_world_range, secs_HHMMSS2, set_SenecaII, set_dist_m2kmnm_stg
# set_dist_stg, set_hdg_stg, set_hdg_stg1, set_hdg_stg3, set_int_dist_stg5, set_lat_stg
# set_lon_stg, show_K_locks, show_comms, show_consumables, show_engines, show_engines_and_fuel
# show_environ, show_sim_info, sleep_ms
lib_html.pl - library
lib_imgsize.pl - library
# AIM: Use external imagemagick 'identify.exe' to get an image SIZE geometry
# Services: im_get_image_size( file_name ); returns geometry nnnnxnnnn
# im_get_image_width( geometry ); returns WIDTH
# im_get_image_height( geometry ); returns HEIGHT
# 20/04/2013 - Rename to lib_imgsize.pl
# 21/08/2007 geoff mclane http://geoffair.net/mperl
lib_incinc.pl - library
# AIM: Get list of INCLUDES in a C/C++ file
# 16/03/2013 - renamed to lib_incinc.pl
# 11/09/2009 - first cut
# remove /* ... */
# and // to end of line
lib_incs.pl - library
# AIM: Get list of INCLUDES in a C/C++ file
# remove /* ... */
# and // to end of line
lib_params.pl - library
lib_srcscan.pl - library
# AIM: Read a C/C++ file, check for main(), and other things...
# Params:
# 1 - required - Source file name to scan
# 2 - optional - BIT Options, for output mainly
# 06/03/2011 - FIX20110306 - add MORE diagnostic concerning #if... parsing
# 19/09/2010 - Make this lib_srcscan.pl, and only retain the chkmain2, now called src_scan
# 2010-07-07 - Some tidying when used in makesrcs.pl
# 20090911 - version 2 with output indicator
# 20090828 - check for quotes "...", and only WARN if could have been in quotes
# 21/11/2007 - geoff mclane - http://geoffair.net/mperl
lib_url.pl - library
# AIM: Load a URL file into a line array, return line count
lib_utils.pl - library
lib_vcdirs.pl - library
lib_vcscan.pl - library
lib_xml.pl - library
# AIM: Gathering together useful 'xml' parsing functions
logfile.pl - library
morse.pl - library
# AIM: A perl representation of morse
myDebug2.pl - library
oldindex.pl - library
p2html11b.pl - library
p2hutil.pl - library
relative.pl - library
# AIM: Given a TARGET path, get RELATIVE path FROM a directory
scanvc.pl - library
sgutil.pl - library
# AIM: some SG services
shwsct.pl - library
# AIM: Extract info from an avio sct file
# includes some Standard Instrument Departures (SIDs) and Standard Terminal Arrivals (STARs)
#
# 27/11/2010 geoff mclane http://geoffair.net/mperl
srtm_data.pl - library
tafacronyms.pl - library
# AIM: List of TAF acronyms
test-bucket.pl - library
test_req2.pl - library
testcolor.pl - library
# AIM:
testdsphdrs.pl - library
# AIM: To test how to implement new headers, and options
# 8/19/2009 - geoff mclane - http://geoffair.net/mperl/
txt2htm.pl - library
utils.pl - library
# AIM: Various utility subs
# 22/09/2010 - now see lib_utils.pl for these...
viewperl.pl - library
viewperl2.pl - library
viewperl3.pl - library
xmlgparse.pl - library
# AIM: My attempt at my OWN XML parser
xmlsax01.pl - library
xp2csv.pl - library
# AIM: Read X-Plane (Robin Pell) earth_nav.dat and apt.dat, and output as CSV and json to
# a target directory
# 07/12/2013 - remove navaids (and ils) from json output
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20100801
xp2json.pl - library
# AIM: Like xp2csv.pl, this accepts ONE airport ICAO, read X-Plane (Robin Pell) earth_nav.dat
# and apt.dat, searching that ICAO, and if found output as ICAO.json
# 16/11/2013 - Allow a LIST of ICAO
# 11/11/2013 geoff mclane http://geoffair.net/mperl
