Perl List

index Alphabetic List end

List of 794 perl files as at 2011/12/23, generated by perl-list.pl

abs_path.pl 2007/04/01 16:00:35 184
use Cwd 'abs_path';
top Alphabetic List
acscan.pl 2010/09/01 17:07:18 29,124
use strict; warnings; File::Basename; File::Spec; Cwd;
sub get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off set_ac_scan_debug_on show_missing_subs pgm_exit prtw show_warnings local_strip_both_quotes show_hash_of_in_file ac_trim_all2 ac_do_macro_sub2 ac_do_macro_sub ac_split_macros ac_add_2_ac_macros ac_do_macro_subs ac_am_conf_line_error scan_one_configure_file give_help show_dbg_help load_input_file need_arg parse_args
top Alphabetic List
acscan02.pl 2010/09/04 15:32:47 39,745
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off set_ac_scan_debug_on init_common_subs show_missing_subs pgm_exit prtw show_warnings local_strip_both_quotes show_hash_of_in_file ac_trim_all2 ac_do_macro_sub2 ac_do_macro_sub ac_split_macros ac_add_2_ac_macros ac_do_macro_subs accumulate_ac_macro accumulate_with_back ac_am_conf_line_error trim_ac_define scan_one_configure_file give_help show_dbg_help load_input_file need_arg parse_args
top Alphabetic List
acscan03.pl 2010/09/19 17:58:12 17,799
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub set_all_dbg_value set_all_dbg_on set_all_dbg_off show_missing_subs show_warnings pgm_exit prtw write_to_am_list process_ac_file get_perl_temp_dir give_help show_dbg_help local_strip_both_quotes load_input_file need_arg parse_args
top Alphabetic List
addheader.pl 2007/04/11 02:44:41 6,022
# AIM: To insert a block of text into the head of a C/C++ file
# geoff mclane - http://geoffmclane.com/mperl/index.htm
use strict; warnings; File::Basename;
sub sub_main is_my_file process_directory process_file rename_2_old_bak trimall parse_args in_excl_list
top Alphabetic List
addrbook.pl 2006/10/21 16:05:52 3,945
# AIM: To decode a BINARY compuserve addrbook,dat file,
# and output the email addresses found.
# geoff mclane - october, 2006
# http://geoffmclane.com/mperl/samples
sub get_byte get_word get_string
top Alphabetic List
addsrcs.pl 2011/11/03 19:50:18 16,716
# AIM: Add sources to a *.vcproj file
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw show_hash process_in_file get_block check_source_list give_help need_arg add_sources load_input_file parse_args
top Alphabetic List
adjjs.pl 2008/07/04 16:09:41 6,657
# 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
use strict; warnings; File::Basename;
sub trim_tail strip_quotes load_files
top Alphabetic List
adjrt01.pl 2006/06/23 19:41:50 10,213
sub process_proj_file find_solution get_proj_files is_solution is_vcproj pos_of_last_slash file_extension file_title file_name file_dirname wlog prt mydie log_close close_log
top Alphabetic List
adjrt02.pl 2006/11/23 11:01:44 14,029
# 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>
# Name="Release|Win32"
sub process_proj_file trimall find_solution get_proj_files is_solution is_vcproj
top Alphabetic List
adjxml.pl 2008/07/07 13:28:44 6,234
# 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!
use strict; warnings; XML::DOM;
sub get_js_caption process_xml process_lines_failed unicode_substr trim_js_line
top Alphabetic List
afm2txf.pl 2007/08/05 15:57:25 8,908
use strict;
sub round genPostscript
top Alphabetic List
alarm.pl 2006/09/12 13:59:34 3,877
# 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.
use strict; warnings; IO::Socket; utf8; POSIX qw(:errno_h);
top Alphabetic List
am2dsp.pl 2005/11/05 12:19:10 31,616
use strict; Cwd;
sub exclude_dir exclude_file parse_arguments read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input expand_here dsp_add_source_rule dsp_add_group dsp_finish
top Alphabetic List
am2dsp1.pl 2005/11/08 19:13:04 34,484
use strict; Cwd;
sub exclude_dir exclude_file do_help parse_arguments read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input expand_here dsp_add_source_rule dsp_add_group dsp_finish
top Alphabetic List
am2dsp2.pl 2005/11/12 11:43:58 34,115
use strict; Cwd;
sub exclude_dir exclude_file do_help parse_arguments read_am2dsprc require_argument scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input expand_here dsp_add_source_rule dsp_add_group dsp_finish
top Alphabetic List
am2dsp3.pl 2005/11/12 12:28:28 34,246
use strict; Cwd;
sub exclude_dir exclude_file do_help parse_arguments read_am2dsprc require_argument scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input expand_here dsp_add_source_rule dsp_add_group dsp_finish
top Alphabetic List
am2dsp4.pl 2006/04/16 11:54:34 45,662
use strict; Cwd;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input am_error expand_here dsp_add_source_rule dsp_add_group dsp_finish check_lib_paths check_inc_paths check_includes pos_of_last_slash file_extension file_title add_2_source_list add_dupes_dir write_new_dsp prt amend_vcproj
top Alphabetic List
am2dsp5.pl 2006/04/28 16:41:30 116,480
use strict; Cwd;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input am_error expand_here dsp_add_source_rule dsp_add_group dsp_finish add_2_used_libs check_lib_paths check_inc_paths show_lib_found find_rel_file find_vc8_file is_in_extra find_in_vc8_srcs find_in_vc8_hdrs file_in_dupes check_vc8_proj check_includes pos_of_last_slash file_extension file_title is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp prt mydie trim_line find_item3 find_headers find_sources find_hash3 find_config get_lines get_raw_lines clear_arrays process_vc8_lines copy_main_items copy_lib_items read_vcproj show_arrays show_main_arrays show_lib_arrays show_sh_lines prt_list amend_vcproj check_vc8_config
top Alphabetic List
am2dsp6.pl 2006/04/29 17:44:52 116,991
use strict; Cwd;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input unquote_cond_val am_error expand_here dsp_add_source_rule dsp_add_group dsp_finish add_2_used_libs check_lib_paths check_inc_paths show_lib_found find_rel_file find_vc8_file is_in_extra find_in_vc8_srcs find_in_vc8_hdrs file_in_dupes check_vc8_proj check_includes pos_of_last_slash file_extension file_title is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp prt mydie trim_line find_item3 find_headers find_sources find_hash3 find_config get_lines get_raw_lines clear_arrays process_vc8_lines copy_main_items copy_lib_items read_vcproj show_arrays show_main_arrays show_lib_arrays show_sh_lines prt_list amend_vcproj check_vc8_config
top Alphabetic List
am2dsp7.pl 2009/06/09 14:41:14 81,545
# 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
use strict; Cwd; File::Basename;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsp_rc scan_configure add_2_ac_macros trim_all2 scan_one_configure_file show_contents read_main_am_file read_am_file initialize_per_input unquote_cond_val conditional_true_when check_ambiguous_conditional am_error am_line_error generate_dsw expand_here show_rename console_app_dsp_init static_lib_dsp_init dsp_add_source_rule is_in_list show_am_sources process_am_file dsp_finish add_2_used_libs check_lib_paths check_inc_paths show_lib_found check_includes is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp trim_line rename_2_old_bak prt_list do_macro_sub2 do_macro_sub prtw show_warnings get_root_name get_dsp_name get_dsw_name fix_rel_path file_extension file_title set_all_debug
top Alphabetic List
am2dsp8.pl 2010/09/22 15:46:25 84,674
# 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
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit add_group_start add_group_end exclude_dir exclude_file add_2_msvc add_2_libs add_2_libpaths read_am2dsp_rc scan_configure add_2_ac_macros trim_all2 scan_one_configure_file show_contents read_main_am_file read_am_file initialize_per_input unquote_cond_val conditional_same conditional_true_when check_ambiguous_conditional am_error am_line_error generate_dsw expand_here show_rename console_app_dsp_init static_lib_dsp_init dsp_add_source_rule is_in_list show_am_sources process_am_file dsp_finish loc_dir_name add_2_used_libs check_lib_paths check_inc_paths show_lib_found check_includes is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp trim_line rename_2_old_bak prt_list do_macro_sub2 do_macro_sub prtw get_root_name get_dsp_name get_dsw_name fix_rel_path file_extension file_title set_all_debug give_little_help set_input_dir require_argument parse_arguments
top Alphabetic List
am2dspcurr.pl 2006/03/21 20:05:14 33,202
use strict; Cwd;
sub exclude_dir exclude_file parse_arguments read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input expand_here dsp_add_source_rule dsp_add_group dsp_finish
top Alphabetic List
am2list01.pl 2009/06/09 14:42:53 63,830
# 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
use strict; Cwd;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsprc scan_configure scan_one_configure_file read_main_am_file read_am_file initialize_per_input unquote_cond_val am_error expand_here dsp_add_source_rule dsp_add_group dsp_finish add_2_used_libs check_lib_paths check_inc_paths show_lib_found pos_of_last_slash file_extension file_title is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp
top Alphabetic List
am2list02.pl 2010/09/22 15:59:49 63,224
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub show_warnings pgm_exit prtw add_group_start add_group_end exclude_dir exclude_file add_2_msvc add_2_libs add_2_libpaths read_am2dsprc scan_one_configure_file scan_configure read_main_am_file read_am_file initialize_per_input unquote_cond_val am_error am_line_error generate_dsw expand_here console_app_dsp_init static_lib_dsp_init dsp_add_source_rule dsp_add_group dsp_finish loc_dirname add_2_used_libs check_lib_paths check_inc_paths show_lib_found is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp show_src_lists require_argument give_little_help set_input_dir parse_arguments
top Alphabetic List
amfile01.pl 2006/07/26 12:21:26 21,767
sub read_am_file am_error unquote_cond_val initialize_per_input trim_line
top Alphabetic List
amitems.pl 2010/03/11 14:16:18 11,266
# AIM: Read a Makefile.am files, and hash the contents
use strict; warnings;
sub show_warnings pgm_exit prtw is_equal_macro is_target_line is_if_else_or_endif process_file show_ref_hash
top Alphabetic List
amscan.pl 2010/09/22 15:37:12 65,901
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub process_one_am_file set_dbg_base get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off set_debug_all set_debug_none get_root_dir add_key_2_added init_commmon_subs2 init_common_subs show_missing_subs prtw show_warnings pgm_exit sub_common_folder sub_root_folder value_not_in_first get_value_from_hash begins_with sub_root_dir do_dir_scan is_file_in_scan match_dir_for_c_source extract_from_hash am_macro_split test_for_substitution add_key_value_2_hash process_AM_file list_to_arrays process_primary give_help need_arg show_dbg_help local_strip_both_quotes load_input_file wait_key parse_args
top Alphabetic List
amscan02.pl 2010/09/22 15:35:52 29,110
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub set_dbg_base get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off get_user_rt get_user_libs get_user_incs get_user_defs get_user_output get_user_inter add_defined_item add_include_item show_missing_subs prtw show_warnings pgm_exit sub_common_folder sub_root_folder_BAD begins_with process_one_am_file sub_root_dir sub_root_folder process_primary get_perl_temp_dir give_help need_arg show_dbg_help local_strip_both_quotes load_input_file set_debug_all set_debug_none add_to_commands parse_args
top Alphabetic List
amsrcs01.pl 2009/06/24 16:58:31 78,071
# 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 ...
use strict; warnings; File::Basename;
sub extract_am_projects show_other_projects show_am_projects get_main_msg scan_root_folder is_in_ac_done do_macro_sub2 do_macro_sub scan_one_configure_file am_error am_conf_line_error am_line_error initialize_per_input unique_proj process_other_sources replace_top_srcdir find_am_includes process_am_file read_main_am_file read_am_file has_no_extent is_am_source_ext is_am_file is_c_source_ext is_h_source_ext add_2_source_list exclude_dir unquote_cond_val conditional_true_when check_ambiguous_conditional trim_line exclude_cvs_svn get_top_files is_c_source is_h_special is_h_source is_dsw_file is_sln_file is_ch_source is_my_type fix_rel mark_all_files show_all_sources get_missed_makes get_all_makes expand_here console_app_dsp_init static_lib_dsp_init end_dsp_file generate_dsw get_am_incs get_am_libs out_dsp_file rename_2_old_bak prtw prtd
top Alphabetic List
amsrcs02.pl 2010/04/14 18:23:28 99,471
# 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
use strict; warnings; File::Basename;
sub get_top_files fix_rel prtw prtd pgm_exit subract_target_dir has_no_extent exclude_cvs_svn exclude_dir is_c_source_ext is_h_source_ext is_am_source_ext is_am_file process_one_file lib_in_projects generate_dsw gen_temp_dsw extract_am_projects gen_inc_hash_others gen_inc_hash_am show_other_projects show_am_projects get_main_msg scan_root_folder is_in_ac_done do_macro_sub2 do_macro_sub scan_one_configure_file am_error am_conf_line_error am_line_error initialize_per_input unique_proj get_lib_depends process_other_sources replace_top_srcdir find_am_includes process_am_file read_main_am_file read_am_file add_2_source_list unquote_cond_val conditional_true_when check_ambiguous_conditional trim_line is_c_source is_h_special is_h_source is_dsw_file is_sln_file is_ch_source is_my_type mark_all_files show_all_sources get_missed_makes get_all_makes expand_here console_app_dsp_init static_lib_dsp_init end_dsp_file get_am_incs get_am_libs out_dsp_file rename_2_old_bak C_comment_starts inline_comment_starts C_comment_ends get_C_file_lines get_include_list show_inc_hash
top Alphabetic List
amsrcs03.pl 2010/09/22 15:48:48 174,397
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub get_top_files set_dbg_base get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off repeat_dsp_info prtw prtd pgm_exit subract_target_dir subract_source_dir does_next_am_file_exist get_next_am_file get_next_full_am_file is_if_else_endif get_my_type_stg has_no_extent exclude_cvs_svn exclude_dir local_is_c_source local_is_h_special local_is_h_source is_dsw_file is_sln_file is_ch_source is_my_type loc_fix_rel is_c_source_ext is_h_source_ext is_am_source_ext is_am_file process_one_file lib_in_projects generate_dsw gen_temp_dsw extract_am_projects gen_inc_hash_others gen_inc_hash_am show_other_projects show_am_projects get_main_msg test_root_folder scan_root_folder is_in_ac_done do_macro_sub2 do_macro_sub drop_trailing_dots is_shell_action local_space_split local_strip_both_quotes grep_for_value get_cut_range set_by_shell_action get_sub_for do_mac_subs macro_split try_for_substitution eat_ac_macro scan_one_configure_file am_error am_conf_line_error am_line_error initialize_per_input unique_proj get_lib_depends process_other_sources replace_top_srcdir find_am_includes strip_single_quotes massage_key is_skipped_item add_2_new_source_list get_proj_name process_in_file_contents process_am_file read_main_am_file pre_process_in_file trim_rule read_am_file add_2_source_list quote_cond_val unquote_cond_val conditional_true_when check_ambiguous_conditional trim_line mark_all_files list_all_sources show_source_list get_missed_makes get_all_makes expand_here console_app_dsp_init static_lib_dsp_init end_dsp_file get_am_incs get_am_libs out_dsp_file local_rename_2_old_bak C_comment_starts inline_comment_starts C_comment_ends get_C_file_lines get_include_list2 get_include_list show_inc_hash process_input_files process_other_files write_upd_bat give_help need_arg show_dbg_help set_cmd_line load_input_file add_to_defines add_to_includes parse_args
top Alphabetic List
amsrcs04-new.pl 2010/09/29 11:47:31 69,970
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB5 VERB9 set_all_dbg_on set_all_dbg_off set_max_debug_on wait_key show_missing_subs show_warnings show_missing_conds show_missing_subs2 pgm_exit prtw write_to_am_list process_ac_file sub_common_folder sub_root_folder begins_with sub_first_from_second_if sub_root_dir process_one_am_file process_an_am_file set_default_configs_2 get_user_rt get_user_libs get_user_incs get_user_defs get_user_output get_user_inter add_defined_item add_include_item valid_rp_hash fix_dir_string is_same_file mark_in_dir_scan create_proj_dsp write_project_DSP_DSW_files process_am_list get_perl_temp_dir do_sanity_check module_intialisation show_dbg_ranges give_help show_dbg_help local_strip_both_quotes load_input_file need_arg add_2_commands show_auto_help set_auto_flag add_user_libs set_cond_item parse_args
top Alphabetic List
amsrcs04.pl 2011/10/14 14:45:39 152,757
# 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...
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub is_win_library set_exclude_project is_project_src_excluded is_project_all_excluded warn_unused_keys get_user_proj_type warn_missed_user_types warn_missed_user_defined warn_missed_user_libs VERB1 VERB2 VERB5 VERB9 set_all_dbg_on set_all_dbg_off set_max_debug_on wait_key show_missing_subs show_warnings show_missing_conds show_missing_subs2 show_scanned_lines_and_time pgm_exit prtw write_to_am_list got_colon_split colon_split process_ac_file sub_common_folder sub_root_folder begins_with sub_first_from_second_if sub_root_dir set_anon_ref_hashes process_one_am_file process_an_am_file set_default_configs_2 get_user_rt get_user_libs rationalise_lib_paths rationalise_proj_lib_path get_user_incs get_user_defs get_user_output get_user_inter add_defined_item add_include_item valid_rp_hash fix_dir_string is_same_file mark_in_dir_scan file_in_array prune_excluded_libs create_proj_dsp get_macro_type_and_key get_macro_new_value do_all_substitutions sanitise_subdir_value hoh_process_value process_hoh_all process_hoh_subs get_EXCLUDE_msg get_excluded_by_joined process_joined_projects get_proj_user_libs is_dependency_excluded write_project_DSP_DSW_files process_am_list get_perl_temp_dir do_sanity_check set_out_file_names module_intialisation show_dbg_ranges give_help show_dbg_help local_strip_both_quotes load_input_file need_arg add_2_commands show_auto_help set_auto_flag add_user_libs set_cond_item set_project_type add_joined_projects parse_args
top Alphabetic List
analwarn.pl 2008/09/15 13:14:25 2,414
# AIM: specialized reading of the MSVC 'warning' list, and sort them into groups
use strict; warnings;
sub process_file prtw mycmp_decend
top Alphabetic List
ansi-console.pl 2008/12/11 17:45:13 1,095
# AIM: Display some color, using Win32::Console::ANSI;
use strict; warnings; Win32::Console::ANSI;
sub list_array fill_arrays
top Alphabetic List
ansicolor.pl 2008/12/12 20:06:47 3,021
# AIM: Test some ANSI coloring - ANSI color sequences
# 12/12/2008 geoff mclane http://geoffair.net/mperl
use strict; Win32::Console::ANSI; Term::ANSIColor;
top Alphabetic List
ansicolor2.pl 2010/01/14 19:19:32 734
use strict; warnings; Win32::Console::ANSI; Term::ANSIColor qw(:constants);
top Alphabetic List
aperltemplate.pl 2010/05/06 13:54:14 3,129
# AIM: Using the file input, create a HTML table item
# 05/05/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat;
sub pgm_exit prtw show_warnings give_help need_arg parse_args
top Alphabetic List
apsetup.pl 2010/06/17 14:42:11 6,545
# AIM: Taking a BLANK application template, build a NEW application, in a NEW
# directory...
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings get_input_files copy_src_files give_help need_arg parse_args
top Alphabetic List
array01.pl 2010/05/01 14:07:47 4,751
# AIM: To check out some array code ...
###use strict;
use warnings;
top Alphabetic List
arrayref01.pl 2007/02/14 10:12:10 866
# 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 ...
use strict; warnings;
sub out_an_array
top Alphabetic List
arrays01.pl 2007/09/04 13:33:06 701
# AIM: Just some tests with an Array of Arrays
# 04/09/2007 geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub prt
top Alphabetic List
ascii.pl 2008/12/12 19:22:17 1,506
# AIM: Ouput an ASCII 255 character chart
# 12/12/2008 - Added OCTAL, and wrap on 4, if ANY parameter added
# and added header lines
top Alphabetic List
atlas-trk.pl 2011/03/03 18:19:03 29,036
# 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
use strict; warnings; File::Basename; Cwd; Time::HiRes qw( usleep gettimeofday tv_interval );
sub show_warnings pgm_exit prtw deg_to_rad get_lat_lon_at_dist_on_heading get_latitude get_longitude get_message_checksum get_gps_info_example_not_used process_GPRMC_msg process_GPGGA_msg process_PATLA_msg bark_if_RMC_ne_GGA get_time_in_seconds get_hhmmss get_decimal_stg get_heading_stg get_sg_dist_stg get_dist_stg get_last_dist_stg process_in_file process_message_arrays give_help need_arg parse_args
top Alphabetic List
autoaccess01.pl 2006/07/22 14:07:00 1,180
use Win32::ODBC; Win32::OLE; Win32::OLE::Const 'Microsoft DAO';
top Alphabetic List
autoaccess02.pl 2006/07/13 18:14:34 1,073
use Win32::ODBC; Win32::OLE; Win32::OLE::Const 'Microsoft DAO';
top Alphabetic List
autoado01.pl 2006/06/12 12:06:58 1,021
use strict; Win32::OLE; Win32::OLE::Const 'Microsoft ActiveX Data Objects';
top Alphabetic List
autoax01.pl 2006/06/12 11:07:52 6,828
use Win32::OLE::Const 'Microsoft ActiveX Data Objects'; Win32::OLE::Variant;
top Alphabetic List
autoexcel01.pl 2006/06/11 20:43:30 4,585
use LWP::Simple; Win32::OLE qw(in valof with); Win32::OLE::Const 'Microsoft Excel'; Win32::OLE::NLS qw(:DEFAULT :LANG :SUBLANG);
sub RGB
top Alphabetic List
autoexcel02.pl 2006/06/12 11:39:48 2,497
use strict; Win32::OLE qw(in with); Win32::OLE::Const 'Microsoft Excel';
sub wlog prt mydie
top Alphabetic List
autoexcel03.pl 2006/06/12 11:42:50 799
use strict; Win32::OLE; Win32::OLE::Const 'Microsoft Excel';
top Alphabetic List
autoexcel04.pl 2006/06/12 11:59:56 1,508
use strict; Win32::OLE qw(in with); Win32::OLE::Const; Win32::OLE::Const 'Microsoft Excel';
top Alphabetic List
autoexcel05.pl 2006/06/19 16:13:50 10,047
use LWP::Simple; Win32::OLE qw(in valof with); Win32::OLE::Const 'Microsoft Excel'; Win32::OLE::NLS qw(:DEFAULT :LANG :SUBLANG);
sub RGB output_bars output_html wlog prt mydie log_close close_log
top Alphabetic List
autoexcel06.pl 2006/06/19 16:13:50 8,067
use Win32::OLE qw(in valof with); Win32::OLE::Const 'Microsoft Excel'; Win32::OLE::NLS qw(:DEFAULT :LANG :SUBLANG);
sub out_version add_chart RGB fill_bars2 fill_bars2_org wlog prt mydie log_close close_log
top Alphabetic List
autoexch01.pl 2006/08/27 10:49:26 5,055
use LWP::Simple;
sub htmlclean01 extractcurrency01
top Alphabetic List
autoexch02.pl 2006/08/26 13:18:24 7,919
use LWP::Simple;
sub extractcurrencies02 htmlclean02
top Alphabetic List
autoexch03.pl 2006/08/26 17:09:40 8,512
# 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
use LWP::Simple;
sub htmlclean03 extractcurrencies03 mth_to_num get_YYYYMMDD
top Alphabetic List
autoexch04.pl 2006/08/27 10:49:26 8,857
# 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>
# sample row from table
#<tr>
#<td> <tt>ARS</tt> </td><td></td><td>Argentine Pesos</td><td></td><td>2.7941</td><td></td><td>3.0958</td>
#<td> <tt>MAD</tt> </td><td></td><td>Moroccan Dirham</td><td></td><td>7.8186</td><td></td><td>8.6630</td>
#</tr>
use LWP::Simple;
sub extractcurrencies04 mth_to_num get_YYYYMMDD
top Alphabetic List
autogif.pl 2007/08/22 14:58:25 5,016
# 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
use strict; warnings; Win32::OLE qw( with in ); Win32::OLE::Const "Microsoft Graph 12.0 Object Library";
top Alphabetic List
autoie01.pl 2006/06/11 19:25:52 1,485
use strict; Cwd; Win32::OLE qw(EVENTS);
sub Event SetEditBox
top Alphabetic List
autoie02.pl 2006/06/14 13:58:04 8,730
use strict; Cwd; Win32::OLE qw(in valof with OVERLOAD EVENTS); Data::Dump qw(dump); Data::Dumper; UNIVERSAL qw( isa can VERSION );
sub Event SetEditBox Enumerate_Forms Enumerate_Forms_2 wlog prt mydie close_log
top Alphabetic List
autoie03.pl 2006/06/14 18:13:34 12,333
use vars qw( $VERSION ); Win32::OLE qw( EVENTS in with valof ); Win32::OLE::Variant; FileHandle;
sub wlog prt mydie close_log
top Alphabetic List
autoie04.pl 2006/06/15 13:49:58 5,230
use strict; warnings; Time::HiRes qw(gettimeofday); URI; Win32::OLE qw( EVENTS in with valof ); Win32::OLE::Variant;
sub win32_ie_events wlog prt mydie close_log
top Alphabetic List
autoie05.pl 2006/06/15 13:51:26 4,054
use strict; Data::Dumper; Win32::OLE qw( EVENTS ); Time::HiRes qw(gettimeofday); IO::Handle;
sub ie_events wlog prt mydie close_log
top Alphabetic List
autoquote01.pl 2006/06/17 18:55:48 2,852
top Alphabetic List
autoquote02.pl 2006/06/17 20:18:00 7,088
use LWP::Simple;
sub wlog prt mydie close_log
top Alphabetic List
autosp01.pl 2011/01/03 15:33:41 12,160
use strict; warnings; Win32::OLE; Data::Dumper;
sub cycle vprt wlog prt prtv9 mydie
top Alphabetic List
autoword01.pl 2006/06/12 17:24:34 1,823
use strict; Win32::OLE; Win32::OLE::Const 'Microsoft Word';
top Alphabetic List
autoword02.pl 2007/09/22 17:16:17 7,692
use Win32::OLE; Win32::OLE::Const 'Microsoft Word';
sub wlog prt mydie require_arg give_help parse_args write_a_file trim_all
top Alphabetic List
autoword03.pl 2006/06/16 10:52:06 4,877
use strict; Win32::OLE qw(in with); Win32::OLE::Const 'Microsoft Word';
sub wlog prt prtv9 mydie
top Alphabetic List
autoword03b.pl 2006/06/16 12:29:46 10,778
use strict; Win32::OLE qw(in with); Win32::OLE::Const 'Microsoft Word'; Time::HiRes qw(gettimeofday);
sub use_get_object use_word_app add_word is_in_common wlog prt prtv9 mydie
top Alphabetic List
autoword04.pl 2006/06/16 10:45:08 3,836
use Win32::OLE::Const;
sub wlog prt mydie close_log
top Alphabetic List
autoword05.pl 2007/08/29 13:16:28 3,685
# 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
use strict; warnings; Win32::OLE; Win32::OLE::Enum;
sub dec2hex show_crlf
top Alphabetic List
avsize.pl 2008/07/02 10:33:11 2,703
# 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/
use strict; warnings; File::Basename; File::stat; Cwd;
sub prt get_nn
top Alphabetic List
basename.pl 2007/03/31 17:51:01 1,055
# AIM: simple example of using fileparse, and basename ...
# see http://perldoc.perl.org/File/Basename.html
use strict; warnings; File::Basename;
sub show_split get_suffix
top Alphabetic List
basename02.pl 2007/03/31 18:03:53 935
# AIM: simple example of using fileparse, and basename ...
# see http://perldoc.perl.org/File/Basename.html
use strict; warnings; File::Basename; File::Spec::Functions qw[splitpath canonpath splitdir abs2rel];
sub show_split
top Alphabetic List
bdlogger.pl 2001/09/01 08:03:00 22,459
sub mail_log
top Alphabetic List
beep.pl 2009/11/16 14:38:26 180
top Alphabetic List
bin2hex02.pl 2006/10/21 15:59:48 3,688
# 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
top Alphabetic List
bits.pl 2008/07/18 19:35:40 1,351
# AIM: Testing bits
use strict; warnings;
sub prt show_val
top Alphabetic List
bldctbl.pl 2011/03/25 17:36:44 7,856
# AIM: Very specific processing of a tidy cleaned winword html to a C table
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw get_p2br get_i2i get_br2_p process_in_file give_help need_arg parse_args
top Alphabetic List
bldtable.pl 2007/08/28 12:57:06 11,669
# 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
use strict; warnings; File::Basename; File::stat; Digest::MD5 qw(md5 md5_hex md5_base64);
sub prth get_description date_string mth_to_num get_zip_files load_descriptions add_if_missing in_exclude get_reference_files check_for_missing modify_references out_htm_head out_htm_tail output_htm_file
top Alphabetic List
bldtable02.pl 2007/08/28 17:31:04 22,892
# 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
use strict; warnings; File::Basename; File::stat; Digest::MD5 qw(md5 md5_hex md5_base64);
sub prth get_description date_string mth_to_num get_zip_files load_descriptions add_if_missing in_exclude get_reference_files check_for_missing modify_references out_htm_head out_htm_tail get_mo_from_sorted add_top_link output_htm_file mycmp_decend get_zip_txt file_name add_js_script get_nn
top Alphabetic List
bldziptbl.pl 2010/12/11 17:05:11 16,008
# 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...
use strict; warnings; File::Basename; Cwd; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat; File::Spec; Time::HiRes qw( gettimeofday tv_interval );
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw my_file_type YYYYMMDD get_nn bytes2ks mycmp_decend_n8 process_in_dir get_head_html get_table_begin show_zip_list process_in_file give_help need_arg parse_args
top Alphabetic List
bldziptbl02.pl 2011/11/18 16:52:38 19,291
# 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...
use strict; warnings; File::Basename; Cwd; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat; File::Spec; Time::HiRes qw( gettimeofday tv_interval );
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw my_file_type YYYYMMDD local_get_nn bytes2ks mycmp_decend_n8 mycmp_decend_n1 process_in_dir process_in_file get_head_html get_table_begin show_zip_list give_help need_arg got_wild process_wild add_file_input parse_args
top Alphabetic List
booksxml.pl 2006/06/11 18:56:56 3,848
use strict; Cwd; Win32::OLE qw(in with);
sub show_node wlog prt mydie
top Alphabetic List
btgvers.pl 2011/11/19 13:44:37 1,708
use strict; warnings;
sub prt show_help show_header
top Alphabetic List
bucket.pl 2011/09/29 14:25:42 7,748
# AIM: Give a lat lon, show the bucket
# 27/09/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file set_int_stg show_bucket process_bucket give_help need_arg parse_args
top Alphabetic List
builddsp.pl 2009/09/22 17:12:22 23,619
# 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
# 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/
use strict; warnings; File::Basename;
sub is_c_source_ext is_h_source_ext mark_in_suggested add_missing_C_suggested add_missing_H_suggested prtw show_warnings get_type_stg is_in_excluded file_has_main file_has_includes scan_directory get_project_hash get_trim_equ get_a_trimed_line load_config_file get_config_hash
top Alphabetic List
c2h01.pl 2010/09/22 17:10:27 37,537
# 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
use strict; warnings; File::Basename; File::stat;
sub is_handled out_used_words is_hex_numb is_all_nums add_word process_line process_file is_resword is_directive is_delimiter_not_used add_red add_blue add_comm add_quot add_winword conv_spaces html_line write_head open_pre close_pre append_tail mycmp_decend is_win_word is_not_res_word set_all_debug add_span add_color_table give_help need_arg parse_args
top Alphabetic List
calc-tile.pl 2006/09/05 13:49:56 3,905
use strict; POSIX;
sub bucket_span format_lon format_lat directory_name tile_index
top Alphabetic List
caller.pl 2006/09/12 14:11:44 797
# AIM: to test caller function ...
sub thissub thatsub
top Alphabetic List
camera01.pl 2008/07/18 18:11:38 2,625
# AIM: Obtain digital camer information from web
# 18/07/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; LWP::Simple; LWP::UserAgent;
top Alphabetic List
checkifd.pl 2009/03/13 14:54:34 1,897
# 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/
use strict; warnings;
sub prt prtw process_file
top Alphabetic List
chk-srtm.pl 2011/06/07 15:14:38 141,574
# AIM: Given a SRTM block, check if it exists
# 07/06/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw get_a_region_list get_region_list process_in_file give_help need_arg parse_args
top Alphabetic List
chk4key.pl 2010/09/05 13:51:26 1,844
# 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
use strict; warnings; Term::ReadKey;
sub show_hex got_keyboard delay
top Alphabetic List
chkaircraft.pl 2010/07/05 14:37:19 16,261
# 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
use strict; warnings; File::Basename; Cwd; File::stat;
sub pgm_exit prtw show_warnings bytes2ks get_nn mycmp_decend mycmp_ascend is_in_list get_missed_list get_dir_size process_aircraft show_ref_hash process_in_folder give_help need_arg parse_args
top Alphabetic List
chkatlaspal.pl 2009/01/22 16:49:24 10,803
# AIM: Read Atlas palette file, and list colors, and material,
# and show colors NOT used.
# 22/01/2009
use strict; warnings;
sub get_YYYYMMDD_hhmmss gen_html_table get_html_head process_mats process_file
top Alphabetic List
chkbraces.pl 2011/04/09 18:21:03 12,200
use strict; warnings;
sub get_indent process_lines show_hash_ref getLines ret_diff get_my_name require_argument give_little_help parse_arguments
top Alphabetic List
chkcmake.pl 2011/11/07 18:36:04 16,502
# AIM: Given an input folder, follow the CMakeLists.txt file
# 25/10/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file clean_action extract_var process_action process_cmake_list process_in_dir give_help need_arg parse_args
top Alphabetic List
chkdbgflag.pl 2010/08/02 11:35:26 3,997
# AIM: VERY SPECIFIC - Check for ($dbg & (\d+))
# 02/08/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings strip_comment process_file give_help need_arg parse_args
top Alphabetic List
chkdbgon.pl 2011/11/04 19:20:35 7,867
# 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
use strict; warnings; File::Basename; Cwd; File::stat;
sub prtw show_warnings pgm_exit begins_with sub_root_dir scan_directory DDMMYYYY scan_scripts load_check_list
top Alphabetic List
chkdupes.pl 2011/11/19 15:29:05 11,413
# 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
# 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
use strict; warnings; File::stat; File::Basename; Cwd;
sub process_folder scan_dir VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw do_one_folder compare_lists show_extensions give_help need_arg parse_args
top Alphabetic List
chkfgmenu.pl 2010/08/22 12:06:47 13,237
# 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
use strict; warnings; File::Basename; Cwd; File::DosGlob 'glob';
sub pgm_exit prtw show_warnings get_file_list compare_to_menu compare_to_qlmenu check_excludes compare_to_index
top Alphabetic List
chkhlink1.pl 2011/11/08 12:12:38 27,514
# 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
use strict; warnings; File::Basename; Socket; File::Spec;
sub VERB1 VERB2 VERB5 VERB9 get_type_href show_warnings pgm_exit prtw showIPAddress add_2_scripts get_href_srcs add_href_src add_link_href_srcs add_img_src add_img_href_srcs is_my_ext is_fp_folder mark_file_referenced scan_directory process_folder add_in_folders process_in_files process_http_refs process_scripts process_missed give_help need_arg parse_args
top Alphabetic List
chkhlinks.pl 2007/06/01 18:54:35 8,846
# 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
use strict; warnings; File::Basename; Socket;
sub showIPAddress add_2_scripts get_href_srcs parse_args is_my_ext is_fp_folder process_folder
top Alphabetic List
chkhsrc.pl 2007/06/02 11:54:31 5,486
# 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
use strict; warnings; File::Basename;
sub check_images get_img_srcs parse_args is_my_ext is_fp_folder process_folder
top Alphabetic List
chkhtml.pl 2010/04/10 10:47:46 12,305
# AIM: Just parse HTML elements, and report any problem
# 2010/04/06 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings is_closed_tag is_opt_tag can_find_this_tag is_all_optional show_stack_elements get_element_chain process_file give_help parse_args
top Alphabetic List
chkifdef.pl 2009/09/17 15:10:00 8,656
# AIM: Scan a directory, and check all files for #ifdef ????, and list them...
# 2009/09/17 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub sub_root_name process_dir trim_comments_from_line add_2_hash parse_defines_in_line process_files show_hash
top Alphabetic List
chkincinc.pl 2009/09/11 13:49:04 1,681
# AIM: Get list of INCLUDES in a C/C++ file
sub delete_comments_from_line get_include_file_list
top Alphabetic List
chkinclist.pl 2009/08/27 16:38:16 3,007
# AIM: VERY SPECIFIC - read MSVC 'include' list found, and analyse
# 8/27/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub process_file
top Alphabetic List
chkintlinks.pl 2008/11/28 18:27:30 10,980
# 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
use strict; warnings; File::Basename;
sub is_my_file_type html_to_lines process_file process_directory prtw show_warnings
top Alphabetic List
chklib.pl 2009/09/27 14:50:24 6,379
# AIM: VERY SPECIFIC - check LIBCMT or LIBCMTD in library
# Uses my 'fa4' utitlity
use strict; warnings; Cwd; File::Basename;
sub prtw show_warnings check_lib process_libs check_contents
top Alphabetic List
chklink.pl 2010/04/20 14:39:15 3,991
# AIM: Develop a method to CHECK a URL link ...
# 2010/04/19 - some minor tidying only...
# 23/08/2007 geoff mclane geoffair.net/mperl
use strict; warnings; Socket; LWP::Simple;
sub Get_Host_Name Get_Domain_Name Get_URL_Text_Count showIPAddress process_url_list
top Alphabetic List
chklinks01.pl 2007/06/18 10:43:11 39,402
# 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
use strict; warnings; File::Basename; Socket;
sub process_file_array get_href_type get_local_href dos_2_unix in_done_srcs in_done_imgs fix_rel_unix_path mark_image_link mark_other_links mark_link show_link_counts in_excused check_local_links check_linkages check_images get_img_srcs check_hrefs showIPAddress add_2_scripts get_href_srcs parse_args is_my_ext is_htm_ext is_graphic_ext is_zip_ext is_css_ext is_txt_ext is_script_ext is_fp_folder in_excludes process_folder show_found_counts in_ips_found process_host_array
top Alphabetic List
chklinks02.pl 2008/07/02 18:38:14 51,322
# 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
use strict; warnings; File::Basename; Socket;
sub process_file_array get_href_type get_local_href dos_2_unix in_done_srcs in_done_imgs fix_rel_unix_path add_new_link mark_image_link mark_other_links mark_link show_link_counts in_excused check_local_links offset_done trace_from_htm get_offset_of_htm get_home_offset check_linkages check_images get_img_srcs check_hrefs showIPAddress add_2_scripts get_href_srcs is_my_ext is_htm_ext is_graphic_ext is_zip_ext is_css_ext is_txt_ext is_script_ext is_fp_folder in_excludes in_spl_excludes process_folder show_found_counts in_ips_found process_host_array show_startup show_help require_arg parse_args secs_2_hhmmss show_time
top Alphabetic List
chklinks03.pl 2011/05/22 17:38:50 112,966
# 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.
# 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
use strict; warnings; File::Basename; Socket; Cwd;
sub set_debug_val set_debug_on set_debug_off mark_link trace_from_htm process_folder is_same_file mark_dir_link is_htm_file_ext pgm_exit show_warnings prtw u2d VERB1 VERB2 VERB5 VERB9 sub_common_folder_dos sub_in_folder is_def_index_file is_link_type_file show_startup is_in_array_ref0 is_in_array_ref get_anchor_hash_ref collecthrefs2 secs_2_hhmmss show_time test_remove_script dropscripts_from_array process_file_array get_href_type get_local_href dos_2_unix in_done_srcs in_done_imgs fix_rel_unix_path add_new_link mark_image_link mark_other_links seek_dir_index_file get_links_stg show_link_counts in_excused check_local_links offset_done get_offset_of_htm get_home_offset check_linkages check_images get_img_srcs get_text_sub check_hrefs checkIPAddress getIPAddress show_uri_ip add_2_scripts get_href_srcs is_this_extent is_htm_ext is_graf_ext is_zip_ext is_css_ext is_txt_ext is_script_ext is_graphic_file_ext is_zip_file_ext is_css_file_ext is_txt_file_ext is_script_file_ext is_fp_folder is_xclude_folder in_excludes in_spl_excludes show_found_counts in_ips_found trim_href get_host_link get_host_link13 get_host_link4 get_domain_name show_remote_links process_host_array write_missing show_scripts show_dir_files show_help require_arg parse_args
top Alphabetic List
chklists.pl 2011/04/27 01:06:09 6,145
# AIM: VERY SPECIFC - scan two lists...
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
chklog.pl 2011/06/01 19:13:25 4,223
# AIM: VERY SPECIFIC - read a log lokking for specific things...
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
chkmain.pl 2010/07/07 15:01:02 9,743
# 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()
sub chkmain2 chkmain chk_main
top Alphabetic List
chkmanifest.pl 2008/08/07 12:39:29 2,092
# 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
use strict; warnings; File::Basename;
sub unix_2_dos process_file
top Alphabetic List
chkos.pl 2011/05/22 16:09:48 207
# AIM: Just output the OS string...
use strict; warnings;
sub prt
top Alphabetic List
chkosgver.pl 2008/09/16 13:15:36 1,888
use strict; warnings;
top Alphabetic List
chkoutput.pl 2009/09/25 14:20:42 3,255
# AIM: VERY SPECIFIC - check the MSVC output for 'unknown' lines...
# 2009/09/25 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub ignore_output_line process_file
top Alphabetic List
chkpath.pl 2007/12/01 20:12:52 1,836
# AIM: Find a file using the PATH environment variable ...
# 01/12/2007 - geoff mclane - geoffair.net/mperl
use strict; warnings;
sub prt mydie unix_2_dos parse_args strip_quotes
top Alphabetic List
chkperl.pl 2010/05/01 14:11:32 21,129
# 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/
use strict; warnings;
sub prtw show_warnings pgm_exit get_space_indent YYYYMMDD2 show_brace_stack process_file give_help parse_args
top Alphabetic List
chkpylons.pl 2010/03/02 18:31:52 8,354
# 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/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file process_ref_hash show_pairs
top Alphabetic List
chkrelpath.pl 2008/10/30 20:25:20 5,228
# AIM: Just to test and check the relative path generation
use strict; warnings;
sub chk_get_relative_path chk_get_rel_dos_path
top Alphabetic List
chkrequire.pl 2010/09/04 18:25:07 4,145
# AIM: Givin an input perl script file name, search for files 'required' by that script
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file do_test give_help need_arg parse_args
top Alphabetic List
chkrt.pl 2011/09/11 18:26:59 99,508
# 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 ...
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit space_split_local is_osg_excluded show_sources process_dsw process_dsp process_sln fix_lib_list process_vcproj_file_NOT_USED modify_vcproj_runtime get_configurationtype process_vcproj unix_2_dos fix_rel reline_xml xml_to_lines rt_2_switch chkrt_strip_quotes expand_mac do_if_split flip_state clear_per_dsp get_runtime get_rtnum get_hyphen_split get_space_split_2 change_the_runtime get_cpp_defines get_cpp_incdirs get_link_libs get_link_dirs load_dsp trim_tail show_runtimes show_rthash process_files elim_debug_versions show_depends write_copy_bat give_help has_wild match_with_wild matches_wild add_this_file expand_wild parse_args
top Alphabetic List
chkwebsrc.pl 2010/12/30 15:08:39 8,511
# 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
use strict; warnings; File::Basename; Cwd; File::stat; Time::gmtime;
sub show_warnings pgm_exit prtw get_YYYYMMDD_hhmmss_UTC process_in_file get_html_list process_web_dir process_src_dir give_help need_arg parse_args
top Alphabetic List
chkxml.pl 2010/01/29 14:40:29 21,831
# 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
use strict; warnings;
sub pgm_exit prtw show_warnings prtv has_utf_16_BOM get_attrs_ref search_harder process_xml_line_array process_xml_file process_xml_files give_help set_verbosity parse_args
top Alphabetic List
chkziptxt.pl 2011/11/08 14:31:39 9,744
# 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
use strict; warnings; File::Basename; Cwd; Time::Local;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw is_in_excluded is_zip_ext is_html_ext is_txt_ext is_zip_file is_html_file datetime_to_seconds is_zip_text_file process_in_file give_help need_arg got_wild parse_args
top Alphabetic List
cleandiff.pl 2008/11/02 15:42:31 2,406
# 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
use strict; warnings;
sub give_help parse_args prt process_file
top Alphabetic List
cleandiff02.pl 2011/12/10 14:58:21 17,694
# 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
# 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
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 match_with_wild matches_wild has_wild in_user_excludes in_dir_excludes prtw show_warnings pgm_exit give_help is_excluded_file get_diff_files process_file write_out_lines show_changed_files need_arg local_strip_both_quotes load_input_file parse_args
top Alphabetic List
cleanhtm.pl 2006/09/09 16:02:36 1,996
# AIM: To clean certain items from a HTML document ...
use strict;
top Alphabetic List
cleanhtm02.pl 2006/10/03 17:47:40 16,409
# 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 ...
use strict;
sub prt_para_list check_my_xml in_xml_range vv_in_xml_range show_xml_list get_para_list process_style get_the_style write_out_file get_next_tag inline_paras check_for_word general_adjustments trimall add_my_style
top Alphabetic List
cleanhtm03.pl 2006/10/04 12:35:18 18,593
# 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 ...
use strict;
sub short_text prt_para_list check_my_xml in_xml_range vv_in_xml_range show_xml_list get_para_list process_style get_the_style write_out_file get_next_tag inline_paras check_for_word general_adjustments trimall add_my_style
top Alphabetic List
cleantd01.pl 2006/10/24 11:41:20 5,772
# 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 ...
use strict;
sub short_text write_out_file check_for_word get_tag trim_tail del_td_style make_adjustments trimall
top Alphabetic List
cleanup.pl 2005/11/24 12:48:38 4,708
# 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 ...
sub process_dir write_clobnow2
top Alphabetic List
cleanup02.pl 2008/07/12 17:16:24 3,913
# 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
use strict; warnings; File::Basename; Cwd;
sub unix_2_dos is_in_list_nc is_fp_folder is_my_file add_if_not_repeat process_folder
top Alphabetic List
client1.pl 2005/05/05 15:51:04 1,070
use strict; Socket;
top Alphabetic List
client2.pl 2005/05/05 15:43:42 952
use IO::Socket::INET;
top Alphabetic List
client5.pl 2006/11/03 18:42:25 1,006
use IO::Socket;
sub sendrcv
top Alphabetic List
client6.pl 2011/09/24 18:47:27 600
use strict; warnings; IO::Socket;
top Alphabetic List
clipboard01.pl 2011/08/03 11:51:24 314
# AIM:
use strict; warnings; Clipboard;
sub prt
top Alphabetic List
cmp2dsps.pl 2009/10/27 20:37:54 42,487
# 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 ...
use strict; warnings; File::Basename; File::stat;
sub clear_load process_DSP fix_rel_path is_c_source is_h_special is_h_source compare_defines_for not_in_arrayi ensure_unique space_split_with_quotes cmp_sw_hashes compare_configs_for show_link_diff show_link_diff_simp get_dsp_block compare_dsp_with_dsp is_same_source_file is_same_file unix_2_dos sub_common_folder set_dbg_show_sources prtw show_warnings
top Alphabetic List
cmp2dsps02.pl 2010/07/04 17:35:06 60,789
# 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 ...
use strict; warnings; File::Basename; File::stat; Cwd;
sub VERB1 VERB2 VERB3 VERB4 VERB5 VERB9 is_same_source_file prtw show_warnings pgm_exit unix_2_dos clear_load split_rsc_items combine_rsc_items process_DSP fix_rel_path1 c2_is_c_source c2_is_h_special c2_is_h_source compare_defines_for not_in_arrayi not_in_arrayi_2r ensure_unique space_split_with_quotes cmp_sw_hashes compare_configs_for show_link_diff show_link_diff_simp get_dsp_block get_file_type compare_dsp_with_dsp is_same_file sub_common_folder set_dbg_show_sources give_help parse_args
top Alphabetic List
cmp2dsps03.pl 2011/01/07 18:23:55 68,988
# AIM: Comparison of TWO DSP files - show different SOURCE files, and configurations...
# 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 ...
use strict; warnings; File::Basename; File::stat; File::Spec; Cwd;
sub ds_get_dbg_val_var ds_get_dbg_var ds_set_dbg_var ds_get_dbg_range ds_get_dbg_stg VERB1 VERB2 VERB3 VERB4 VERB5 VERB9 is_same_source_file prtw show_warnings pgm_exit unix_2_dos clear_load split_rsc_items combine_rsc_items process_DSP fix_rel_path1 c2_is_c_source c2_is_h_special c2_is_h_source compare_defines_for not_in_arrayi not_in_arrayi_2r ensure_unique space_split_with_quotes cmp_sw_hashes compare_configs_for show_link_diff show_link_diff_simp get_dsp_block get_file_type compare_dsp_with_dsp is_same_file sub_common_folder set_dbg_show_sources do_sanity_check show_dbg_ranges show_dbg_help ds_set_all_dbg_on ds_set_all_dbg_off ds_set_max_debug_on give_help need_arg parse_args
top Alphabetic List
cmp2dsw.pl 2010/10/01 11:42:41 8,545
# AIM: Compare 2 DSW files
# 29/09/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw get_anon_dep get_DSW_hash compare_h1_with_h2 process_in_files give_help need_arg parse_args
top Alphabetic List
cmparrays.pl 2009/12/10 11:54:16 6,229
# AIM: VERY SPECIFIC - load a log file, and compare triangle listings
# 09/12/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub process_file compare_very_near find_closest_point show_ref_arr
top Alphabetic List
cmpcomp.pl 2008/05/09 16:15:31 4,001
# AIM: Compare tow compiler strings ...
use strict; warnings;
sub get_comp_arr
top Alphabetic List
cmpconfigs.pl 2009/08/21 17:24:10 6,856
# AIM: Compare 2 config files...
# 8/21/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub drop_comments is_config_other out_hash_list load_cfg_file compare_2_hashes YYYYMMDD
top Alphabetic List
cmpdefines.pl 2010/01/01 19:46:36 10,789
# 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 ...
use strict; warnings;
sub pgm_exit give_help VERB1 VERB2 VERB3 VERB4 VERB5 VERB9 process_files parse_args
top Alphabetic List
cmpdirs.pl 2008/11/01 18:35:10 5,298
# AIM: A simple COMPARE of the files in one directory, with those in another
# 01/11/2008 - geoff mclane - http://geoffair.net/mperl
use strict; warnings; File::Basename;
sub compare_entries load_directory is_in_array_nc prtw show_warnings
top Alphabetic List
cmpdirs02.pl 2011/12/03 17:56:29 10,798
# AIM: Complete re-write of cmpdirs.pl
use strict; warnings; File::Basename; File::Spec; Cwd; File::stat;
sub load_directory VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file is_in_array_nc compare_dirs process_dirs give_help need_arg parse_args
top Alphabetic List
cmpdist.pl 2010/11/20 15:57:17 4,680
# AIM: Use perl trib function for distance London to Tokyo...
# from : http://perldoc.perl.org/Math/Trig.html
use strict; warnings; Math::Trig qw(great_circle_distance great_circle_direction deg2rad rad2deg);
sub NESW show_sg_distance_vs_est show_distance get_hhmmss
top Alphabetic List
cmpexports.pl 2009/07/09 19:08:24 1,635
# AIM: Given two DLL files, run 'dumpbin /EXPORTS <DLL>' on each,
# and compare the results...
# 7/9/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; Cwd;
top Alphabetic List
cmpfgpl.pl 2008/11/21 19:01:16 6,319
# 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] ;
use strict; warnings; File::stat;
sub show_missing get_YYYYMMDD_hhmmss get_diff_text compare_files compare_perl_files parse_args prtw show_warnings
top Alphabetic List
cmpini.pl 2009/12/30 19:03:27 12,818
# 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
use strict; warnings;
sub pgm_exit give_help sectionin2 itemin2 item3in2 process_files parse_args
top Alphabetic List
cmptriangles.pl 2009/12/06 18:33:50 8,218
# AIM: VERY SPECIFIC - load a log file, and compare triangle listings
# 06/12/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub get_lat_lon process_file compare_very_near not_a_triangle show_ref_arr
top Alphabetic List
cmpvc8todsp.pl 2008/05/27 13:28:13 25,403
# AIM: Load a VC8 project file (.VCPROJ), and compare it with a VC6 DSP (.DSP) file,
# and SHOW different sources ...
use strict; warnings; File::Basename;
sub process_DSP get_xml_tag tag_typ_2_stg get_tag_typ get_app_type get_xml_sources mystricmp compare_proj_with_dsp is_same_DOS_file fix_rel_path is_c_source is_h_special is_h_source prtw show_warnings
top Alphabetic List
cmpvcprojs.pl 2008/08/16 12:33:40 17,230
# 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
use strict; warnings; File::Basename;
sub unix_2_dos get_rel_path space_split array_2_hash_on_equals process_xml_lines is_vcproj is_solution strip_quotes fix_rel_path process_SLN load_xml_lines prtw show_warnings
top Alphabetic List
cmpvcprojs02.pl 2010/05/19 14:35:55 12,212
# 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/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings compare_vc_hashes compare_files give_help parse_args
top Alphabetic List
codebox.pl 2005/05/15 05:42:04 1,004
top Alphabetic List
color3.pl 2007/02/13 20:21:02 19,107
# AIM: To build a COLOR WHEEL in HTML
use strict; warnings; Math::Trig;
sub html_begin html_end floor ceil round out_of_circle get_bg_color out_color_wheel_NO_GOOD simple_circle hypotenuse get_angle_radians get_angle_degrees get_hypotenuse within_circle within_circle_rad does_60_deg_rad_pass out_color_wheel_OK get_fill get_slice get_color out_color_wheel
top Alphabetic List
color4.pl 2007/02/14 13:56:00 7,739
# AIM: To take an X,Y, and convert to a color ...
use warnings; Math::Trig;
sub html_begin html_end webRounder hexColorArray rgb2hex hsv2rgb mouseMoved floor ceil round
top Alphabetic List
color_rb.pl 2010/03/07 20:12:05 6,968
# AIM: Another attempt a generating a color table
use strict; warnings;
sub gen_full_color_array genrainbow get_html_head get_YYYYMMDD_hhmmss get_tail_html write_out_html
top Alphabetic List
colors1.pl 2006/06/27 10:11:38 3,500
top Alphabetic List
colors2.pl 2007/02/12 11:31:11 65,761
# 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
use strict; warnings;
sub html_begin html_end list_std_colors gen_std_array out_an_array out_std_array out_std_array_OK split_words in_used is_in_used save_used_colors get_closest_color get_closest_generated inverted_hex_color check_used_std closest_color_span show_ref_colors URLDecode URLEncode URLEncodeORG sort_std_array build_new_array same_nums_together out_400_table floor ceil round get_bg_color out_color_wheel
top Alphabetic List
colortable.pl 2009/01/22 16:56:32 38,325
# AIM: Generate an 512 color table
# 12/01/2008 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub gen_table2_text gen_table3_text hex_color_2_rgb rgb_color_2_hex get_red_color get_green_color get_blue_color sort_colors gen_table_text gen_table5_text get_menu_text out_html_head out_html_divide get_YYYYMMDD_hhmmss get_atlas_table out_html_tail mycmp_decend get_luminosity get_name_color_table out_named_colors is_in_list do_color_compare
top Alphabetic List
colour2.pl 2005/05/20 07:49:12 4,522
sub add_colour2_table
top Alphabetic List
colours.pl 2005/05/18 14:26:56 929
top Alphabetic List
com_03.pl 2005/07/08 14:31:12 1,301
use strict; Win32::SerialPort; Time::HiRes qw(sleep);
top Alphabetic List
comex1.pl 2005/07/21 11:45:02 1,729
use strict; vars qw( $OS_win $ob $file );
top Alphabetic List
comread.pl 2005/07/09 17:14:44 5,932
use strict; Win32::SerialPort;
sub openPort closePort nextfilename
top Alphabetic List
comread2.pl 2005/07/09 20:43:44 10,925
use strict; Win32::SerialPort;
sub openPort closePort latitude longitude gps_output process_GPRMC_msg nextfilename write_html_pos
top Alphabetic List
comread3.pl 2005/07/22 07:56:28 14,442
use strict; Win32::SerialPort;
sub latitude longitude gps_output process_GPRMC_msg openPort closePort nextfilename write_html_pos2 give_help parse_arguments
top Alphabetic List
confscan.pl 2010/09/13 09:08:59 3,856
# AIM: Scan of a GNU configure file
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw get_params give_help need_arg parse_args
top Alphabetic List
convcr.pl 2006/09/26 16:59:00 1,115
sub load_file write2file
top Alphabetic List
convdegrees.pl 2007/11/20 14:27:24 3,633
# AIM: To convert Farenheight to Centigrade and vice versa
# 20/11/2007 geoff mclane - http:geoffair.net/mperl
use strict; warnings;
sub convert_f2c convert_c2f give_little_help parse_arguments
top Alphabetic List
convstr-refout.pl 2009/09/01 11:20:14 76,764
use strict;
top Alphabetic List
convstranon.pl 2009/09/04 08:29:10 12,727
# AIM: Deal with a structrue conversion
# 8/30/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub word_in_array word_in_res_words trim_ends conv_str_string show_hash conv_str_stg show_hash2
top Alphabetic List
convstruct.pl 2009/09/26 23:16:40 216,461
# 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/
use strict; warnings;
sub get_dbg_str prtw show_warnings my_exit word_in_array word_in_res_words get_unique_key key_is_unique_type show_struc_defines get_total_blocks get_copied_count trim_ends YYYYMMDD add_to_done_file set_test_strings show_struct_hash split_alphanum get_potential_struct_name deal_with_member is_struct_tag build_struct_hash set_debug_on_str_parse set_debug_on_fill_str brace_closes_in_this_line just_space_to_semi_colon strip_comments reline_instance_string reline_instance_string_OK get_struc_mem_names offset_in_hash word_is_rh_name instance_space_split is_instance_definition add_line_2_hash test_depth clear_hash_values get_full_str_txt complain_if_mast_len bump_master_copied copy_hash_to_master fill_struct_per_gcc set_debug_on_fill get_hash_instance get_hash_instance2 find_block_at extract_avcodectag get_struct_inst_stg show_full_hash_of_hashes process_comment do_br_stack deal_with_enum_line show_enum_hash get_hash_ref_enum do_struct_conv get_master_hoh get_master_hoh2 show_str_hash get_loaded_names_array_ref word_is_rh_name_2 is_instance_definition_2 add_line_2_hash_2 fill_struct_per_gcc_2 process_in_file output_null_set process_a_file
top Alphabetic List
copyhoh.pl 2009/02/06 11:46:07 1,152
# AIM: copy a hash, into a hash reference, as the value
use strict; warnings;
sub prt get_hash show_collection
top Alphabetic List
countfile.pl 2007/11/05 15:06:14 9,350
# AIM: Load the templines.txt file, and process the extries more
# 03/11/2007 geoff mclane - http://geoffair.net/mperl
use strict; warnings; File::Basename;
sub is_punct is_oper1 is_p_or_op analyse_arr analyse_line
top Alphabetic List
countword.pl 2007/11/03 19:12:11 6,368
# 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
use strict; warnings; File::Basename;
sub mycmp_decend in_avoid process_file process_folder
top Alphabetic List
createdsp.pl 2010/08/12 15:58:16 34,285
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB VERB2 VERB5 VERB9 pgm_exit prtw show_warnings check_proj_name check_out_dir check_proj_type check_out_name set_default_configs_2 get_user_rt get_user_libs get_user_incs get_user_defs get_user_out get_user_inter create_proj_dsp give_help need_arg get_adjusted_srcs load_arg_file pre_process_verbosity parse_args
top Alphabetic List
createdsp02.pl 2010/09/22 15:41:44 35,366
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB VERB2 VERB5 VERB9 pgm_exit prtw show_warnings check_proj_name check_out_dir check_proj_type check_out_name set_default_configs_2 get_user_rt get_user_libs get_user_incs get_user_defs get_user_out get_user_inter create_proj_dsp give_help need_arg get_adjusted_srcs load_arg_file pre_process_verbosity parse_args
top Alphabetic List
createdsp03.pl 2011/10/16 10:02:14 35,593
# 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...
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB VERB2 VERB5 VERB9 pgm_exit prtw show_warnings check_proj_name check_out_dir check_proj_type check_out_name set_default_configs_2 get_user_rt get_user_libs get_user_incs get_user_defs get_user_out get_user_inter create_proj_dsp give_help need_arg get_adjusted_srcs load_arg_file pre_process_verbosity add_to_proj_incs parse_args
top Alphabetic List
csslist.pl 2010/07/11 13:01:26 10,597
# 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
use strict; warnings; File::Basename;
sub process_folder show_warnings pgm_exit prtw is_fp_folder is_css_file value_not_in_ra check_css_list show_background show_ref_hash
top Alphabetic List
currencyISO.pl 2006/08/28 11:31:28 15,510
sub ISO2Currency ISO2CurrencyOnly Currency2ISO ISO2Country Country2ISO_1 Country2ISO RetISOTableText RetISO3166TableText
top Alphabetic List
cvstime.pl 2009/01/18 17:07:11 4,735
# 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 ;=))
use strict; warnings; File::stat; File::Basename;
sub prt mydie process_dir give_help parse_args dos_2_unix get_nn
top Alphabetic List
cvsversion.pl 2010/12/10 12:32:22 17,157
# 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
use strict; warnings; File::stat; File::Basename; Time::gmtime;
sub prt mydie prtw show_warnings pgm_exit get_YYYYMMDD_hhmmss_UTC get_YYYYMMDD_UTC mycmp_ascend_n2 in_excluded_vc in_excluded_ext in_excluded_user in_excluded_dirs in_excluded is_an_excluded_file dos_2_unix get_nn show_per_time_list b2ks2 show_per_folder show_latest_file is_in_respository_folder process_dir give_help check_nxt parse_args
top Alphabetic List
data2struct.pl 2009/09/29 18:04:40 13,992
# AIM: VERY SPECIFIC
# 29/09/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub strip_comment_chars process_data show_hash_ref
top Alphabetic List
datecalc.pl 2006/09/12 19:48:28 6,401
#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);
use strict; Date::Calc qw(:all);
sub try_us_parse try_eu_parse try_parse out_date_set
top Alphabetic List
debug.pl 2010/09/01 13:32:45 2,403
use strict; warnings;
sub set_dbg_base get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off
top Alphabetic List
dec2hex.pl 2006/10/21 10:54:30 1,261
sub dec2hex
top Alphabetic List
def2stg.pl 2007/04/14 16:07:32 3,401
# 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
use strict; warnings;
sub give_help parse_args
top Alphabetic List
degs2rads.pl 2010/08/17 12:35:37 596
# AIM: Given input of DEGREES, output RADIANS
# 17/08/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; Math::Trig;
top Alphabetic List
delline.pl 2008/07/02 14:09:38 5,481
# AIM: Search for a line, and delete it, and write file out
use strict; warnings;
sub just_width just_height adjust_line
top Alphabetic List
delsame.pl 2010/01/19 19:04:04 2,298
# AIM: Given an input file, scan deleting blank and same lines
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file show_ref_arr
top Alphabetic List
delsvn.pl 2009/08/31 12:30:42 10,768
# AIM: To read a diff -u file, and exclude files in .svn folders...
# 8/30/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub prtw show_warnings sub_base_svn_dir process_file add_file_list give_help process_args
top Alphabetic List
diffanal1.pl 2006/09/10 18:55:16 3,109
# AIM: to read a diff file, and search for specific items
# 2006.09.10 - added missing files, but must exclude _cti_cnf
sub show_diff my_file my_path
top Alphabetic List
dir2list.pl 2010/01/06 19:10:24 3,300
# AIM: Given a 'directory' file input, output a list ...
sub mycmp_decend
top Alphabetic List
dir2list02.pl 2011/11/15 16:14:30 14,511
# AIM: Take a directory listing file, and write it as a simple list
# 11/11/2011 - Some imporvement in the UI...
use strict; warnings; File::Basename; Cwd; Time::Local;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw mycmp_decend0 mycmp_decend7 suppress_last delete_cwd datetime_to_epoch_secs datetime_to_seconds process_input_file process_input_files give_help need_arg process_args
top Alphabetic List
dirbydate.pl 2011/09/09 10:53:45 28,169
# AIM: Read a file output from the DIR command, and order the files in DATE
# order ... drop out the pure <DIR> entries ...
# 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 ...
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB3 VERB9 pgm_exit is_frontpage_folder got_fp_dir has_excluded_ext_i has_user_excluded_ext_i got_cvs_dir got_git_dir got_svn_dir skip_line remdir mycmp_ascend mycmp_decend in_user_excluded out_sorted_list process_input_file guess_date_order need_arg give_help parse_arg_v parse_args
top Alphabetic List
dirbydateold.pl 2006/12/19 19:04:59 4,443
# AIM: Read a file output from the DIR command, and order the files in DATE
# order ... drop out the pure <DIR> entries ...
use strict; warnings;
sub trimall remdir mycmp_ascend mycmp_decend
top Alphabetic List
dirbyname.pl 2010/07/18 17:19:23 22,412
# 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 ...
use strict; warnings;
sub VERB1 VERB2 VERB3 VERB9 pgm_exit is_frontpage_folder got_fp_dir got_cvs_dir got_git_dir got_svn_dir skip_line remdir mycmp_ascend mycmp_decend mycmp_ascend1 mycmp_decend1 out_sorted_list process_input_file guess_date_order need_arg give_help parse_arg_v parse_args
top Alphabetic List
dirbysize.pl 2011/09/15 17:13:28 21,741
# 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
use strict; warnings; File::Basename;
sub VERB1 VERB2 VERB5 VERB9 prt_version prtw show_warnings pgm_exit get_nn trimall remdir mycmp_ascend2 mycmp_decend2 is_date_entry is_time_entry dbs_d2u is_a_respository_dir set_common_folder process_in_file dbs_b2ks2 show_file_list process_in_files give_help parse_arg_v need_arg parse_args
top Alphabetic List
dircompact.pl 2009/11/22 12:14:54 541
use strict; warnings;
top Alphabetic List
dirdate-old.pl 2011/01/07 13:11:47 6,706
# AIM: Scan given directory, and list the latest, in date order
use strict; warnings; File::Basename; File::stat; Cwd;
sub show_warnings pgm_exit prtw get_YYYYMMDD_hhmmss sub_common_folder show_file_ref process_directory give_help need_arg parse_args
top Alphabetic List
dirdate-old2.pl 2011/11/12 14:52:11 16,105
use strict; warnings; File::stat; File::Basename; Time::gmtime;
sub VERB1 VERB2 VERB5 VERB9 process_directory show_warnings pgm_exit prtw get_YYYYMMDD_hhmmss_UTC mycmp2 mycmp2_invert has_repo_folder has_excluded_ext is_excluded_file is_temp_file show_on_day_basis show_last give_help need_arg parse_args
top Alphabetic List
dirdate.pl 2011/12/10 13:42:29 16,664
use strict; warnings; File::stat; File::Basename; Time::gmtime;
sub VERB1 VERB2 VERB5 VERB9 process_directory show_warnings pgm_exit prtw get_YYYYMMDD_hhmmss_UTC mycmp2 mycmp2_invert has_repo_folder has_excluded_ext is_excluded_file is_temp_file show_on_day_basis show_last give_help need_arg parse_args
top Alphabetic List
direct.pl 2011/09/08 10:00:29 5,123
# 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
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file do_direct give_help need_arg parse_args
top Alphabetic List
dirg.pl 2007/01/27 12:23:25 11,975
use strict; Cwd; File::stat;
sub do_user_dir do_sub_dir parse_arguments dirname retfulldir subactdir addbold addcolm addcolmr html_head html_head2 html_tail b2ks1 get_nn
top Alphabetic List
dirg2.pl 2007/01/27 12:23:44 14,669
# 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 ...
use strict; Cwd; File::stat;
sub do_user_dir do_sub_dir parse_arguments dirname retfulldir subactdir addbold addcolm addcolmr html_head html_head2 html_tail b2ks1 get_nn
top Alphabetic List
dirg3.pl 2008/07/22 15:31:49 30,050
# 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
use strict; Cwd; File::stat;
sub out_sort_table mycmp_ascend mycmp_decend in_excluded do_user_dir do_sub_dir parse_arguments require_argument dirname retfulldir subactdir addbold addcolm addcolmr html_head html_head2 html_tail b2ks2 b2ks1 get_nn mth_to_num date_string
top Alphabetic List
dirmin.pl 2011/12/13 13:18:19 4,688
# 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
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
dirrel.pl 2011/07/12 19:07:51 8,849
# AIM: Given a file name, get the relative directory of the file, if found
use strict; warnings; File::Basename; File::Spec; Cwd; Win32::Clipboard;
sub show_warnings pgm_exit prtw process_in_file2 scan_dir match_with_wild matches_wild has_wild process_in_file give_help need_arg parse_args
top Alphabetic List
dirs.pl 2005/04/25 03:51:46 3,626
sub do_recursive get_nn b2ks1
top Alphabetic List
dirsizes.pl 2009/01/02 16:37:06 9,472
# 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
use strict; warnings; File::stat;
sub bytes2ks mycmp_decend get_nn show_dir_sizes process_folder give_help require_arg set_verbosity parse_args prtw show_warnings
top Alphabetic List
dirsizes02.pl 2010/07/01 15:59:46 16,379
# 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
use strict; warnings; File::stat; Cwd; Fcntl ':mode';
sub bytes2ks bytes2ks_1000 mycmp_decend get_nn show_dir_sizes is_directory show_stat process_folder give_help require_arg set_verbosity parse_args prtw show_warnings dir2unix
top Alphabetic List
dirsizes03.pl 2010/07/13 14:34:47 18,390
# AIM: Given a PATH, show the directories existing, and the approx. size of each
# including the number of files found
# 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
use strict; warnings; File::stat; Cwd; Fcntl ':mode';
sub process_folder prtw show_warnings pgm_exit dir2unix bytes2ks mycmp_ascend mycmp_decend mycmp_decend_alpha get_nn is_directory show_stat show_dir_sizes give_help require_arg set_verbosity parse_args
top Alphabetic List
distance.pl 2010/11/10 11:46:18 3,033
# AIM: Use perl trib function for distance London to Tokyo...
# from : http://perldoc.perl.org/Math/Trig.html
use strict; warnings; Math::Trig qw(great_circle_distance great_circle_direction deg2rad rad2deg);
sub NESW get_hhmmss
top Alphabetic List
distance02.pl 2011/09/08 12:33:46 16,001
# 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
# 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
use strict; warnings; Math::Trig qw(great_circle_distance great_circle_direction deg2rad rad2deg);
sub VERB1 VERB2 VERB5 VERB9 prt pgm_exit in_world set_decimal1_stg set_decimal2_stg set_decimal_stg NESW show_sg_distance_vs_est get_sg_distance_vs_est get_latlon_stg show_intervals show_distance get_hhmmss give_help need_arg parse_args
top Alphabetic List
DmmReg-test.pl 2010/10/23 11:36:25 396
use DmmReg; strict;
top Alphabetic List
dms2ll.pl 2011/07/21 13:52:11 2,690
# AIM: To accept an input DEGREES MINUTES (SECONDS DECIMAL) [NSEW]
# and convert to a single decimal degrees ... 47 28 0 N
# 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 ...
use strict; warnings;
top Alphabetic List
doupload.pl 2005/08/06 07:32:32 3,606
use strict; Cwd; File::stat;
sub in_todo in_done process_folder
top Alphabetic List
download.pl 2008/08/01 17:02:39 3,319
# 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
use strict; warnings; LWP::Simple; LWP::UserAgent;
sub callback
top Alphabetic List
downloadut.pl 2008/07/17 14:11:58 2,756
use warnings; LWP::Simple; LWP::UserAgent;
sub callback
top Alphabetic List
downloadut02.pl 2008/07/17 14:18:40 3,450
# AIM: To download a YouTube video
# NOTE: THIS NO LONGER WORKS DUE TO MANY CHANGES IN THE YOUTUBE CONTENTS PAGE!!!
use strict; warnings; LWP::Simple; LWP::UserAgent;
sub callback
top Alphabetic List
dsp2cfg.pl 2007/04/21 19:51:58 1,988
# AIM: Read a specific DSP file, and build an am2dsp CONFIG file
# 21/04/2007 - geoff mclane - http:\\geoffmclane.com
use strict; warnings;
sub strip_dquotes
top Alphabetic List
dswlist.pl 2009/09/22 17:12:22 19,445
# 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.
# 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
use strict; warnings; File::Basename; Cwd;
sub get_app_type_stg_local strip_quotes2 space_split2 is_c_source_local show_hash_results2 show_master_hash process_in_file process_directory is_my_file dos_to_unix scan_dsp remove_base_path show_files process_dsw load_in_file unix_2_dos fix_rel die_if_no_file prt_usage parse_args
top Alphabetic List
dvdsizes.pl 2010/04/07 19:23:40 47,487
# 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
use strict; warnings; Cwd; File::stat; File::Find; Data::Dumper;
sub process_dir_array_ref VERB1 VERB2 VERB3 VERB5 VERB9 prtw show_warnings pgm_exit prtv1 prtso prtsot strip_dbl_quotes get_nn b2ks2 b2ks2_ok find_local_files_2 mycmp_decend mycmp_ascend mycmp_ascend_2 mycmp_decend_2 mycmp_ascend_a mycmp_decend_a output_file_list process_dir get_stg_left_aligned get_aligned_file_size get_aligned_ks_size get_aligned_size_stg get_size_stg process_file_array_ref remove_base2 process_full_hash show_hash_reference is_in_excluded dir_is_in_excluded find_local_files process_dir_hash remove_base expand_dir_hash no_case_ascend show_dir_sizes add_padding divide_for_dvd process_in_files require_argument deal_with_i_opt deal_with_v_opt deal_with_s_opt deal_with_x_opt give_help pre_parse_v_opt parse_arguments
top Alphabetic List
editgroup.pl 2008/03/09 17:31:11 1,072
# 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
use strict; warnings;
sub get_input
top Alphabetic List
elapsed.pl 2009/11/17 13:03:18 1,984
# 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
use strict; warnings;
sub parse_args get_seconds secs2hms
top Alphabetic List
EmbedManifest.pl 2008/08/04 13:48:37 13,754
use File::Find; File::Copy; Cwd;
sub ShowHelp prt
top Alphabetic List
encode01.pl 2006/10/30 18:47:20 871
use strict; warnings; Encode;
top Alphabetic List
end.pl 2008/07/30 11:26:23 153
use strict; warnings;
top Alphabetic List
end02.pl 2008/07/30 11:26:48 222
use strict; warnings;
top Alphabetic List
env-cgi.pl 2005/06/18 10:20:22 427
sub prt
top Alphabetic List
eppearl.pl 2005/11/24 14:57:16 5,078
sub do_stx_file
top Alphabetic List
extra.pl 2005/05/08 11:04:44 95
use strict;
sub tolog
top Alphabetic List
extra2.pl 2005/05/08 13:10:38 790
use strict;
sub verify_2 get_user_name
top Alphabetic List
extractwords.pl 2008/01/12 20:14:22 3,528
# AIM: read a file, and extract the word within ...
# 12/01/2008 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub is_hex_numb is_all_nums add_word process_directive process_file show_words
top Alphabetic List
ExtUtils01.pl 2008/08/05 10:48:02 960
#AIM: To explore some items in ExtUtils::MakeMaker::Config;
use strict; ExtUtils::MakeMaker::Config; File::Basename; File::Spec; ExtUtils::MakeMaker qw( neatvalue ); vars qw(@ISA $VERSION);
sub prt
top Alphabetic List
ExtUtils02.pl 2008/08/05 11:13:20 1,766
# AIM: To Enumerate the keys and values in
use strict; warnings; ExtUtils::MakeMaker::Config;
top Alphabetic List
factorial.pl 2007/05/20 17:21:11 715
# AIM: Take an input of an integer, and show the factorial of that number.
use strict; warnings; bignum;
top Alphabetic List
fav-01.pl 2007/03/03 15:27:47 3,836
# 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 ...
use strict; Cwd; File::stat; Time::HiRes qw(usleep ualarm gettimeofday tv_interval);
sub scandir
top Alphabetic List
fav-02.pl 2005/11/10 15:03:34 2,402
sub get_lists do_dir prt sb
top Alphabetic List
fav-03.pl 2006/06/29 12:24:46 6,790
# 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">'
sub get_lists do_dir prt max_sub sb ohl oh out_htm_head out_htm_tail
top Alphabetic List
fav-04.pl 2006/07/15 15:21:28 17,376
# 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
use File::stat;
sub get_table_arr mth_to_num get_YYYYMMDD get_lists do_dir prt max_sub2 max_sub remdir ohl oh out_htm_head out_htm_tail in_fav_broken in_oth_broken in_exclude
top Alphabetic List
fav-04b.pl 2006/07/15 11:55:34 4,996
# AIM: Load broken HTML report from front page ...
sub in_brokenf in_brokeno
top Alphabetic List
fav-05.pl 2007/08/24 15:54:55 21,680
# 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
use strict; warnings; File::stat; Socket; LWP::Simple;
sub post_processing get_link_text add_link_para out_htm_head add_link_item out_htm_table out_htm_para1 out_htm_table2 out_htm_tail write_html_file get_favorite_folder get_file_list process_dir remdir in_exclude max_sub2 max_sub secs_2_hhmmss get_table_arr YYYYMMDD get_tidy_text Get_URL_Text_Count Get_Host_Name Get_Domain_Name showIPAddress
top Alphabetic List
favfind.pl 2008/02/16 18:29:47 3,302
# AIM: Read Favorites folder, and show a URL on find ...
# 16/02/2008 - Geoff McLane - http://geoffair.net/mperl
use strict; warnings; File::Basename;
sub get_favorite_folder get_file_list process_dir
top Alphabetic List
fg-ac.pl 2010/12/18 18:05:15 72,982
# 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);
#}
use strict; warnings; File::Basename; Cwd;
sub load_thorn_list VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit short_form_file_name is_rel_set_file sub_common_dir process_dir process_files xml_get_type_name is_cdata ret_stack_text_simple ret_stack_text_arr get_att_ref check_ele_stack scan_xml_text parse_xml_text parse_xml_text_warning has_utf_16_BOM parse_xml_file parse_xml_ok parse_ref_set get_warn_error_text is_in_array_ref is_in_array_ref_0 show_ele_hash transfer_ele_hash xml_get_all_children show_child_hash show_fg_sim_references get_fg_string get_fg_sim_fdm_string get_fg_sim_author_string get_fg_sim_status_string get_fg_sim_aero_string get_fg_sim_desc_string get_YYYYMMDD_local show_ref_dir test_inp_dir show_rel_ac read_inp_dir check_air_list give_help need_arg parse_args
top Alphabetic List
fg01.pl 2005/05/15 13:14:16 563
top Alphabetic List
fg_f14b.pl 2011/09/30 09:57:48 14,968
# AIM: Add auto pilot to f14b - first attempt
# 24/09/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); GeoCoord;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw prtt local_got_keyboard key_help show_aplocks show_position set_init_position check_auto_mode main_loop get_all_info init give_help need_arg parse_args
top Alphabetic List
fg_getelev.pl 2008/12/11 18:08:38 6,300
use strict; IO::Socket; POSIX qw(floor nice); Win32::Console::ANSI;
sub help main main_loop fgfs_connect fgfs_get fgfs_set fgfs_send error
top Alphabetic List
fg_io_xml.pl 2011/04/15 17:38:37 8,911
# AIM: View the contents of a FlightGear IO XML file
# 15/04/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
fg_menu_xml.pl 2011/04/18 16:37:17 25,551
# AIM: View the contents of a FlightGear IO XML file
# 15/04/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub process_in_file show_warnings pgm_exit prtw space_split_local path_per_os show_count_hash process_dialog_name collect_item_lines process_file_lines give_help need_arg parse_args
top Alphabetic List
fg_server_xml2.pl 2011/08/22 15:54:22 35,509
use strict; warnings; Time::gmtime; IO::Socket; Math::Trig;
sub test_conv fgs_rad2deg get_YYYYMMDD_hhmmss_UTC scalar_dot_product norm_vector_length show_quat show_vec3 quat_conj mult_quats mult_vec3 scalar_mult_vector getEulerRad getEulerDeg fromRealImag fromAngleAxis fromLonLatRad euler_get sample_serv_data process_lines get_socket_lines prt do_testing
top Alphabetic List
fg_signs.pl 2008/12/12 18:34:44 16,034
use strict; IO::Socket; Cwd; Win32::Console::ANSI;
sub main read_config parse_options argument read_data main_loop sort_locations names_show_next find_free convert create_sign fgfs_get_coord fgfs_connect fgfs_get fgfs_set fgfs_send ll2xyz xyz2ll coord_dist_sq ls fatal log
top Alphabetic List
fg_signs_convert.pl 2008/12/11 18:05:31 597
# AIM:
use strict; warnings;
sub convert
top Alphabetic List
fg_signs_test.pl 2008/12/13 12:09:49 7,091
# AIM: Just TESTING parts of the original 'signs' perl script
# 12/12/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; Cwd; Win32::Console::ANSI;
sub coord_dist_sq sort_locations sort_per_a_location read_config ls ll2xyz read_data fatal log
top Alphabetic List
fg_sqaure-ok.pl 2011/07/23 18:39:43 119,596
# 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
use strict; warnings; File::Basename; Cwd; IO::Socket; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); Math::Trig;
sub get_locations get_curr_posit get_curr_env get_curr_comms get_curr_consumables get_curr_gps get_curr_engine get_curr_Klocks get_curr_sim get_YGIL_route show_warnings pgm_exit prtw prt2 prtt process_in_file set_decimal1_stg_old set_decimal1_stg set_int_stg get_dist_stg_nm normalised_hdg show_distance_heading show_rw_patt set_runway_ends_and_patt init_runway_array fgfs_connect get_exit fgfs_send fgfs_set fgfs_get_w_time fgfs_get fgfs_get_gps fgfs_get_engines fgfs_get_K_locks fgfs_get_position fgfs_get_environ fgfs_get_comms fgfs_get_consumables 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_coord fgfs_get_alt fgfs_get_hdg_true fgfs_get_hdg_mag set_SenecaII fgfs_get_hdg_bug fgfs_set_hdg_bug fgfs_get_agl fgfs_get_aspd_kts fgfs_get_gspd_kts fgfs_get_eng_running fgfs_get_eng_rpm fgfs_get_eng_throttle fgfs_get_eng_running2 fgfs_get_eng_rpm2 fgfs_get_eng_throttle2 fgfs_get_K_ah fgfs_get_K_pa fgfs_get_K_pm fgfs_get_K_ra fgfs_get_K_rm fgfs_get_K_hh fgfs_get_wind_speed fgfs_get_wind_heading fgfs_get_wind_east fgfs_get_wind_north fgfs_get_metar fgfs_get_mag_var fgfs_get_comm1_active fgfs_get_comm1_stdby fgfs_get_comm1 fgfs_get_comm2_active fgfs_get_comm2_stdby fgfs_get_comm2 fgfs_get_nav1_radial fgfs_get_nav1_active fgfs_get_nav1_stdby fgfs_get_nav1 fgfs_get_nav2_active fgfs_get_nav2_stdby fgfs_get_nav2 fgfs_get_adf_active fgfs_get_adf_stdby fgfs_get_adf fgfs_get_fuel1_imp fgfs_get_fuel1_us fgfs_get_fuel2_imp fgfs_get_fuel2_us fgfs_get_fuel_lbs fgfs_get_fuel_kgs fgfs_get_aero fgfs_get_fdm fgfs_get_root fgfs_get_desc fgfs_get_sim_info get_position_stg get_current_position got_flying_speed got_keyboard sleep_ms set_dist_stg set_dist_m2kmnm_stg set_hdg_stg1 set_lat_stg set_lon_stg set_hdg_stg headed_to_target show_YGIL_route secs_HHMMSS2 get_longest_rw get_closest_rw_hdg track_to_within_degs get_feet_per_min show_position show_environ show_comms show_consumables show_K_locks check_keyboard show_engines show_engines_and_fuel wait_for_engine wait_for_alt_hold get_hdg_in_range get_mag_hdg_from_true set_hdg_bug head_for_target process_orbit commence_orbit show_sim_info lineup_to_target keyboard_help Point_Inside_Triange Triangle_Area add_arrow_to_center add_img_arrow add_img_circle add_img_line dist_less_or_equal5 draw_text_at_latlon draw_text_at_pos get_circuit_hash get_mid_bl2br get_mid_bl2br2 get_mid_tl2bl get_runways_and_pattern in_world_range is_in_circuit norm_vector_length norm_vector_length2 paint_user_points point_in_circuit process_lat_lon scalar_dot_product scalar_dot_product2 set_circuit_values set_distances_bearings set_hdg_stg3 set_int_dist_stg5 set_min_max set_most_values_plus get_next_pointset process_circuit main_loop give_help need_arg parse_args
top Alphabetic List
fg_square.pl 2011/07/23 18:39:43 119,596
# 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
use strict; warnings; File::Basename; Cwd; IO::Socket; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); Math::Trig;
sub get_locations get_curr_posit get_curr_env get_curr_comms get_curr_consumables get_curr_gps get_curr_engine get_curr_Klocks get_curr_sim get_YGIL_route show_warnings pgm_exit prtw prt2 prtt process_in_file set_decimal1_stg_old set_decimal1_stg set_int_stg get_dist_stg_nm normalised_hdg show_distance_heading show_rw_patt set_runway_ends_and_patt init_runway_array fgfs_connect get_exit fgfs_send fgfs_set fgfs_get_w_time fgfs_get fgfs_get_gps fgfs_get_engines fgfs_get_K_locks fgfs_get_position fgfs_get_environ fgfs_get_comms fgfs_get_consumables 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_coord fgfs_get_alt fgfs_get_hdg_true fgfs_get_hdg_mag set_SenecaII fgfs_get_hdg_bug fgfs_set_hdg_bug fgfs_get_agl fgfs_get_aspd_kts fgfs_get_gspd_kts fgfs_get_eng_running fgfs_get_eng_rpm fgfs_get_eng_throttle fgfs_get_eng_running2 fgfs_get_eng_rpm2 fgfs_get_eng_throttle2 fgfs_get_K_ah fgfs_get_K_pa fgfs_get_K_pm fgfs_get_K_ra fgfs_get_K_rm fgfs_get_K_hh fgfs_get_wind_speed fgfs_get_wind_heading fgfs_get_wind_east fgfs_get_wind_north fgfs_get_metar fgfs_get_mag_var fgfs_get_comm1_active fgfs_get_comm1_stdby fgfs_get_comm1 fgfs_get_comm2_active fgfs_get_comm2_stdby fgfs_get_comm2 fgfs_get_nav1_radial fgfs_get_nav1_active fgfs_get_nav1_stdby fgfs_get_nav1 fgfs_get_nav2_active fgfs_get_nav2_stdby fgfs_get_nav2 fgfs_get_adf_active fgfs_get_adf_stdby fgfs_get_adf fgfs_get_fuel1_imp fgfs_get_fuel1_us fgfs_get_fuel2_imp fgfs_get_fuel2_us fgfs_get_fuel_lbs fgfs_get_fuel_kgs fgfs_get_aero fgfs_get_fdm fgfs_get_root fgfs_get_desc fgfs_get_sim_info get_position_stg get_current_position got_flying_speed got_keyboard sleep_ms set_dist_stg set_dist_m2kmnm_stg set_hdg_stg1 set_lat_stg set_lon_stg set_hdg_stg headed_to_target show_YGIL_route secs_HHMMSS2 get_longest_rw get_closest_rw_hdg track_to_within_degs get_feet_per_min show_position show_environ show_comms show_consumables show_K_locks check_keyboard show_engines show_engines_and_fuel wait_for_engine wait_for_alt_hold get_hdg_in_range get_mag_hdg_from_true set_hdg_bug head_for_target process_orbit commence_orbit show_sim_info lineup_to_target keyboard_help Point_Inside_Triange Triangle_Area add_arrow_to_center add_img_arrow add_img_circle add_img_line dist_less_or_equal5 draw_text_at_latlon draw_text_at_pos get_circuit_hash get_mid_bl2br get_mid_bl2br2 get_mid_tl2bl get_runways_and_pattern in_world_range is_in_circuit norm_vector_length norm_vector_length2 paint_user_points point_in_circuit process_lat_lon scalar_dot_product scalar_dot_product2 set_circuit_values set_distances_bearings set_hdg_stg3 set_int_dist_stg5 set_min_max set_most_values_plus get_next_pointset process_circuit main_loop give_help need_arg parse_args
top Alphabetic List
fg_telnet.pl 2011/01/02 12:45:08 21,243
# 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
use strict; warnings; IO::Socket; Cwd; Win32::Console::ANSI; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval );
sub get_playback_nodes set_verbosity chk_arg parse_args main got_keyboard my_sleep secs2minsecs get_decimal_stg get_heading_stg get_sg_dist_stg get_dist_stg main_loop fgfs_connect fgfs_send fgfs_get_coord fgfs_get_altitude fgfs_get_heading fgfs_get_agl get_parking_node fgfs_get_parking fgfs_set set_parking_break fgfs_get ll2xyz xyz2ll coord_dist_sq fatal mylog
top Alphabetic List
fg_telnet02.pl 2011/09/25 14:18:17 21,236
# 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
use strict; warnings; IO::Socket; IO::Select; Cwd; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval );
sub VERB1 VERB2 VERB5 VERB9 fatal pgm_exit get_playback_nodes got_keyboard my_sleep_secs secs2minsecs get_decimal_stg get_heading_stg get_sg_dist_stg get_dist_stg check_key_sleep fgfs_get_raw get_all_nodes get_all_nodes_bad main_loop fgfs_connect_no_better fgfs_connect fgfs_send fgfs_get_coord fgfs_get_altitude fgfs_get_heading fgfs_get_agl get_parking_node fgfs_get_parking fgfs_set set_parking_break fgfs_get ll2xyz xyz2ll coord_dist_sq main set_verbosity chk_arg parse_args
top Alphabetic List
fg_test.pl 2011/09/30 18:58:30 8,888
# AIM: Just a test module
# 24/09/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); GeoCoord;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw prtt local_got_keyboard get_lat_y_lon_x run_test give_help need_arg parse_args
top Alphabetic List
fg_wsg84.pl 2011/09/30 17:44:23 15,853
# AIM:
# 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.
# 17/12/2008 geoff mclane http://geoffair.net/mperl
use constant PI => 4 * atan2(1, 1);
sub get_fg_PI fg_geo_inverse_wgs_84 FG_MO fg_geo_direct_wgs_84 fg_ll2xyz fg_xyz2ll fg_coord_dist_sq fg_coord_distance_m fg_lat_lon_distance_m myGeod_DEG_FT_ToCart myCart_To_Geod func_floor
top Alphabetic List
fgam2dsp.pl 2009/06/09 13:36:45 83,216
# 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/
use strict; warnings; Cwd; File::Basename;
sub add_group_start add_group_end exclude_dir exclude_file give_little_help set_input_dir parse_arguments add_2_msvc add_2_libs add_2_libpaths read_am2dsp_rc scan_configure add_2_ac_macros trim_all2 is_in_ac_done show_contents read_main_am_file initialize_per_input unquote_cond_val conditional_true_when check_ambiguous_conditional am_error am_line_error generate_dsw expand_here show_rename console_app_dsp_init static_lib_dsp_init dsp_add_source_rule is_in_list show_am_sources process_am_file dsp_finish get_dir_name add_2_used_libs check_lib_paths check_inc_paths show_lib_found check_includes is_c_source_ext is_h_source_ext add_2_source_list add_dupes_dir write_new_dsp trim_line prt_list do_macro_sub2 do_macro_sub prtw show_warnings get_root_name get_dsp_name get_dsw_name file_extension file_title read_am_file scan_one_configure_file
top Alphabetic List
fgamscan-ok.pl 2008/10/05 12:59:30 28,825
# 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 \
#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
#SP_FDM_LIBS = $(top_builddir)/src/FDM/SP/libSPFDM.a
#SP_FDM_LIBS =
#if WITH_THREADS
#THREAD_LIBS = -lsgthreads $(thread_LIBS)
#THREAD_LIBS =
#GFX_COMMON = fg_os_common.cxx fg_os.hxx
#if USE_SDL
#GFX_CODE = fg_os_sdl.cxx $(GFX_COMMON)
#if USE_GLUT
#GFX_CODE = fg_os.cxx $(GFX_COMMON)
#GFX_CODE = fg_os_osgviewer.cxx $(GFX_COMMON)
#JSBSIM_LIBS = \
# $(top_builddir)/src/FDM/JSBSim/libJSBSim.a \
# $(top_builddir)/src/FDM/JSBSim/initialization/libInit.a \
#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
#JPEG_SERVER =
#MPLAYER_AS = multiplay.cxx multiplay.hxx
#libNetwork_a_SOURCES = \
# protocol.cxx protocol.hxx \
# $(JPEG_SERVER) \
# $(MPLAYER_AS) \
# generic.hxx generic.cxx
use strict; warnings; File::Basename;
sub process_one_am_file process_primary write_temp_dsp list_to_arrays sub_fg_dir get_value_from_hash extract_from_hash process_AM_file prtw show_warnings
top Alphabetic List
fgamscan.pl 2009/06/09 13:40:42 32,955
# 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 \
#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
#SP_FDM_LIBS = $(top_builddir)/src/FDM/SP/libSPFDM.a
#SP_FDM_LIBS =
#if WITH_THREADS
#THREAD_LIBS = -lsgthreads $(thread_LIBS)
#THREAD_LIBS =
#GFX_COMMON = fg_os_common.cxx fg_os.hxx
#if USE_SDL
#GFX_CODE = fg_os_sdl.cxx $(GFX_COMMON)
#if USE_GLUT
#GFX_CODE = fg_os.cxx $(GFX_COMMON)
#GFX_CODE = fg_os_osgviewer.cxx $(GFX_COMMON)
#JSBSIM_LIBS = \
# $(top_builddir)/src/FDM/JSBSim/libJSBSim.a \
# $(top_builddir)/src/FDM/JSBSim/initialization/libInit.a \
#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
#JPEG_SERVER =
#MPLAYER_AS = multiplay.cxx multiplay.hxx
#libNetwork_a_SOURCES = \
# protocol.cxx protocol.hxx \
# $(JPEG_SERVER) \
# $(MPLAYER_AS) \
# generic.hxx generic.cxx
use strict; warnings; File::Basename;
sub process_one_am_file process_in_list process_primary write_gen_dsp write_temp_dsp list_to_arrays begins_with sub_fg_dir sub_fg_dir_OLD get_value_from_hash extract_from_hash process_AM_file prtw show_warnings
top Alphabetic List
fgapt01.pl 2005/06/17 04:31:48 370
use strict;
top Alphabetic List
fgchkaircraft.pl 2008/12/07 20:23:54 11,380
# AIM: Check 'data/Aircraft' folder for valid aircraft ...
# 07/12/2008 - added 'status'
# 11/7/2008 - geoff mclane - http://geoffair.net/fg
use strict; warnings; File::Basename;
sub show_hash_ref process_folder process_aircraft_folder mycmp_decend_asc mycmp_ascend_asc mycmp_ascend_a5 mycmp_ascend_a4 mycmp_ascend_a3 prtw show_warnings
top Alphabetic List
fgcmp2dsps.pl 2009/10/04 12:54:33 28,042
# 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 ...
use strict; warnings; File::Basename; File::stat; Cwd; constant {
sub parse_args comp_v1_with_v2 compare_cfg_of_dsp clear_load process_DSP compare_dsp_with_dsp fg_is_same_file_name is_same_file unix_2_dos sub_common_folder prtw show_warnings
top Alphabetic List
fgdsphdrs.old.pl 2008/10/06 14:04:46 24,083
sub get_dsp_head_console get_dsp_head_app get_dsp_head_slib get_dsp_head_dynalib get_dsp_tail get_dsw_head get_dsw_tail get_default_sub get_dsp_header_text fg_get_runtime_val_2_lts get_app_conf_type adjust_app_type_per_subsystem write_hash_to_DSP
top Alphabetic List
fgdsphdrs.pl 2009/08/16 14:21:16 33,783
sub set_dbg_props get_dsp_head_console get_dsp_head_app get_dsp_head_slib get_dsp_head_static_MD get_dsp_head_dynalib get_dsp_tail get_dsw_head get_dsw_tail get_default_sub get_dsp_header_text fg_get_runtime_val_2_lts get_app_conf_type adjust_app_type_per_subsystem get_balance_of_line_bump_offset get_if_props add_dotrel_if_none write_hash_to_DSP get_proj_begin get_proj_end write_proj_DSW
top Alphabetic List
fgdsphdrs02.pl 2009/10/19 15:32:38 41,782
sub set_dbg_props get_app_type_4_short get_app_type_stg strip_quotes_02 dos_2_unix_02 scan_DSP_lines process_DSP_file get_dsp_head_console get_dsp_head_app get_dsp_head_slib get_dsp_head_static_MD get_dsp_head_dynalib get_dsp_tail get_dsw_head get_dsw_tail get_default_sub get_default_sub2 get_dsp_header_text fg_get_runtime_val_2_lts get_app_conf_type adjust_app_type_per_subsystem get_balance_of_line_bump_offset get_if_props add_dotrel_if_none write_hash_to_DSP2 get_proj_begin get_proj_end write_proj_DSW
top Alphabetic List
fgdsphdrs03.pl 2010/09/11 16:34:27 77,418
use strict; warnings; Cwd;
sub set_dbg_props get_fetch_function get_default_sub3 get_default_sub_ref get_app_type_hash_ref_short get_app_type_4_short get_app_type_stg strip_quotes_02 dos_2_unix_02 scan_DSP_lines process_DSP_file get_list_of_subs get_project_name get_common_dsp_head get_targ_type_ref get_based_on_ref get_APP_TYPE_string get_project_type is_dll_project is_app_project get_based_on_stg add_targ_type add_def_config3 add_def_config get_configs_array3 get_configs_array get_hash_version add_message_section get_compile_block get_project_flag get_dsp_head_stg get_def_lib_list get_dsp_console_rel get_dsp_console_dbg get_dsp_app_rel get_dsp_app_dbg get_dsp_slib_rel get_dsp_slib_dbg get_dsp_dynalib_rel get_dsp_dynalib_dbg get_dsp_tail get_dsw_head get_dsw_tail get_dsp_header_text fg_get_runtime_val_2_lts get_app_conf_type adjust_app_type_per_subsystem get_balance_of_line_bump_offset get_if_props add_dotrel_if_none write_hash_to_DSP3 get_proj_begin get_proj_end get_proj_depends3 get_bat_head add_bat_copy write_proj_DSW3 get_simple_DSW_txt
top Alphabetic List
fgdspscan.pl 2008/10/11 12:21:12 32,772
use strict; warnings; File::stat; File::Basename;
sub show_dsp_list show_hash show_key_val scan_DSP_array scan_DSP scan_DSP_OLD_good prtw show_warnings scan_DSP_line
top Alphabetic List
fgfixfn.pl 2010/04/12 17:48:36 44,492
# 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/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings is_closed_tag is_opt_tag can_find_this_tag is_all_optional show_stack_elements get_attribute_hash_ref get_anchor_hash_ref get_img_hash_ref get_table_element get_table_hash_ref get_ufile_text process_file fix_these_lines show_ref_hash parse_args
top Alphabetic List
fggenmenu.pl 2010/04/15 17:37:58 13,831
# 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/
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw gm_strip_quotes gm_strip_both_quotes ignored_lines split_comma process_file get_html_head show_ref_hash
top Alphabetic List
fgmerge.pl 2010/04/09 14:02:46 30,332
# AIM: SPECIALISED: Take two files - NEW and OLD, and merge the content
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings get_img_hash_ref get_table_element get_table_hash_ref process_files parse_args
top Alphabetic List
fgscanvc-ok.pl 2008/11/07 12:28:58 43,138
sub dbg_show_entering_files dbg_show_source_files show_hash_results process_VCPROJ xml_array_to_lines fg_xml_to_lines get_string_with_sep get_includes_string get_defines_string get_libpaths_string
top Alphabetic List
fgscanvc.pl 2009/08/08 18:26:06 54,016
sub dbg_show_entering_files dbg_show_source_files dbg_show_output_files dbg_set_all_scan_debug show_hash_results process_VCPROJ fg_xml_to_lines get_string_with_sep get_includes_string get_defines_string get_libpaths_string xml_array_to_lines
top Alphabetic List
fgscanvc02.pl 2009/10/17 19:26:46 71,295
sub dbg_show_entering_files dbg_show_source_files dbg_show_output_files dbg_set_all_scan_debug show_hash_results line_2_hash_on_equals add_props_to_hash show_confs_warning pre_process_VCPROJ process_VCPROJ fg_xml_to_lines get_string_with_sep get_includes_string get_defines_string get_libpaths_string xml_array_to_lines
top Alphabetic List
fgscanvc03.pl 2009/10/29 16:15:04 88,788
sub dbg_show_entering_files dbg_show_source_files dbg_show_output_files dbg_set_all_scan_debug svc_get_dbg_stg show_hash_results3 add_2_source_ref add_props_to_hash show_confs_warning add_any_per_file_items add_config_arrays process_VCPROJ3 fg_xml_to_lines xml_array_to_lines
top Alphabetic List
fgscenery.pl 2007/03/21 14:32:31 6,806
# 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;
#}
use strict; warnings;
sub add_2_terrrain add_2_objects submain submain2 process_folder parse_args dos_2_unix conv_bucket_index
top Alphabetic List
fgscenery02.pl 2011/03/29 14:38:55 8,236
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub process_in_dir show_warnings pgm_exit prtw give_help need_arg parse_args
top Alphabetic List
fgshowmaterials.pl 2009/02/27 14:19:36 8,525
# AIM: Very specific show of 'materials' defined in FG data 'materials.xml'
# 27/02/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub trim_xml xml_to_lines outfile process_in_file
top Alphabetic List
fgsln2dsw.pl 2008/10/26 15:00:55 150,354
# 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
use strict; warnings; File::Basename; Cwd; constant {
sub Process_SLN_in add_proj_begin add_proj_depends add_proj_end in_list write_DSW_file write_dsp_list_file compare_proj_with_dsp is_same_DOS_file process_DSW process_DSP get_xml_tag tag_typ_2_stg get_tag_typ fg_get_app_type get_app_type split_conf is_in_skip_conf_rel is_in_skip_conf_dbg is_in_skip_lib_rel is_in_skip_lib_dbg set_runtime_dbg set_runtime_rel set_includes set_includes_dbg set_includes_rel get_group_type get_def_group_name get_def_group_filter get_tt_string exclude_from_build reline_xml fg_reline_xml merge_filters get_mapped_lines fg_get_runtime_val_2_lts fg_get_runtime_lts_2_stg fg_get_runtime_stg_2_val fg_get_runtime_stg_2_lts get_xml_sources fg_clear_proj_files is_vcproj resolve_depends process_SLN get_suffix is_rc_file parse_args is_in_array_nc out_src fg_out_src get_header v8_aptype_consistent get_refs_for_pname generate_DSP fg_get_runtime_stg get_runtime_stg array_ref_2_array split_defines prtf out_group_files add_source_files get_refall_groups show_v6_refall add_proj_2_depends write_out_depends set_modest_debug prtw show_warnings
top Alphabetic List
fgsln2dsw02.pl 2008/10/31 19:06:26 15,065
# 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
use strict; warnings; File::Basename; Cwd;
sub fg_add_proj_begin fg_add_proj_depends fg_add_proj_end process_solution_hash show_solution show_solution_simple is_vcproj process_SLN_file prtw show_warnings
top Alphabetic List
fgslnlist.pl 2008/10/08 13:43:51 107,261
# 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\.]
use strict; warnings; File::Basename; constant {
sub process_vcproj_xml_lines unix_2_dos fix_rel is_vcproj resolve_depends process_SLN process_sln_file process_sln_file_OLD_but_OK is_my_file process_directory do_directory_scan get_xml_tag tag_typ_2_stg get_tag_typ fg_get_app_type space_split_blocks array_2_hash_on_equals_OLD split_conf is_in_skip_conf_rel is_in_skip_conf_dbg is_in_skip_lib_rel is_in_skip_lib_dbg set_runtime_dbg set_runtime_rel set_includes_dbg set_includes_rel get_group_type get_def_group_name get_def_group_filter fg_get_runtime_val_2_lts fg_get_runtime_lts_2_stg fg_get_runtime_stg_2_val fg_get_runtime_stg_2_lts get_runtime_stg_OLD_NOT_USED fix_rel_path get_suffix is_rc_file is_in_array_nc get_tt_string exclude_from_build fg_reline_xml merge_filters get_mapped_lines get_xml_sources fg_clear_proj_files get_xml_sources_main prtw output_proj_list collect_xml_sources alternative_scan show_warnings array_ref_2_array split_defines prtf out_group_files add_source_files get_refall_groups show_v6_refall write_out_depends set_modest_debug
top Alphabetic List
fgutils.pl 2009/10/25 15:55:38 15,054
use File::stat; File::Basename;
sub get_def_src_filt get_def_hdr_filt get_def_rcs_filt get_def_spl_filt get_def_src_grp get_def_hdr_grp get_def_rcs_grp get_def_spl_grp open_log prt mydie close_log write2file append2file trim_ends trim_all path_u2d path_d2u get_relative_path get_rel_dos_path rename_2_old_bak add_quotes is_in_array is_c_source is_c_source_extended is_h_source is_h_special is_h_source_extended is_resource_file strip_dotrel space_split space_split_OLD array_2_hash_on_equals strip_quotes strip_both_quotes massage_command show_file_stat fix_rel_path
top Alphabetic List
fgutils02.pl 2010/09/05 13:51:03 24,680
use strict; warnings; File::stat; File::Basename;
sub get_def_src_filt get_def_hdr_filt get_def_rcs_filt get_def_spl_filt get_def_src_grp get_def_hdr_grp get_def_rcs_grp get_def_spl_grp open_log prt mydie close_log write2file append2file trim_ends trim_all path_u2d path_d2u get_relative_path_reversed_words get_relative_path get_rel_dos_path rename_2_old_bak rename_2_old_bak_plus add_quotes is_in_array is_c_source is_c_source_extended is_h_source is_h_special is_h_source_extended is_resource_file is_config_file_like is_text_ext_file strip_dotrel space_split space_split_to_rh array_2_hash_on_equals strip_quotes strip_both_quotes massage_command show_file_stat fix_rel_path3 fix_rel_path line_2_hash_on_equals get_vs_vars_bat get_vs_install_dir get_string_with_sep get_includes_string get_defines_string get_libpaths_string
top Alphabetic List
fgvc2dsp.pl 2008/10/31 18:57:18 86,655
# 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 ...
use strict; warnings; File::Basename; Cwd; constant {
sub get_group_type split_conf is_in_skip_conf_rel is_in_skip_conf_dbg is_in_skip_lib_rel is_in_skip_lib_dbg set_runtime_dbg set_runtime_rel set_includes set_includes_dbg set_includes_rel fg_get_runtime_val_2_lts_COPY fg_get_runtime_lts_2_stg fg_get_runtime_stg_2_val fg_get_runtime_stg_2_lts fg_get_app_type get_tag_typ get_xml_tag get_mapped_lines fg_reline_xml exclude_from_build get_xml_sources fg_clear_proj_files array_ref_2_array get_refall_groups get_refs_for_pname get_header v8_aptype_consistent out_src fg_out_src generate_DSP prtw show_warnings
top Alphabetic List
fgvc2dsp02.pl 2009/02/17 12:49:54 2,074
# AIM: Scan a single VCPROJ file, and extract information
# geoff mclane - http://geoffair.net/fg
use strict; warnings;
sub prtw show_warnings
top Alphabetic List
filecount.pl 2011/05/19 18:50:54 9,433
use strict; warnings; File::Basename; File::Spec; File::stat; Cwd;
sub VERB1 VERB2 VERB5 VERB9 scan_dir show_warnings pgm_exit prtw mycmp_decend_n1 mycmp_ascend_n1 mycmp_ascend_n4 show_file_array deal_with_verbosity give_help need_arg parse_args
top Alphabetic List
filelist.pl 2009/10/15 13:14:58 18,371
# 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/
use strict; warnings; File::Basename; Cwd; File::stat;
sub scan_directory VERB1 VERB2 VERB3 VERB4 VERB5 VERB6 VERB7 VERB8 VERB9 VERB10 VERB11 list_exclude_ext give_help show_warnings pgm_exit prtw sub_root_dir path_2_dos has_excluded_dir is_in_array_nc get_nn bytes2ks get_size_msg got_includes is_in_includes out_file_list need_arg parse_args
top Alphabetic List
find-incs.pl 2011/10/19 12:40:25 10,505
use strict; warnings; File::Basename; Cwd; File::stat;
sub process_dir process_file prtw show_warnings pgm_exit mycmp_decend process_input show_done show_not_found give_help need_arg process_args
top Alphabetic List
find_dirs.pl 2009/10/03 19:27:42 6,077
use strict; warnings; File::Basename; Cwd; File::stat;
sub process_dir prtw show_warnings pgm_exit is_my_file_type get_max_len_stg blank_while_same mycmp_decend mycmp_ascend show_dir_ref
top Alphabetic List
find_in_inctrail.pl 2011/07/21 08:23:50 37,655
# 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 ...
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub show_warnings pgm_exit prtw unix_2_dos same_folder is_same_file in_this_array show_all_missed add_2_included add_2_found_list mycmp_ascend show_found_list C_comment_starts inline_comment_starts C_comment_ends process_file load_vc8_cfg load_vc8_bat get_tmp90_txt get_INCLUDE_Folders fix_rel get_relative_dirs show_rel_fold_set give_help need_arg parse_args
top Alphabetic List
findap.pl 2006/09/05 13:41:22 3,718
# AIM: Read FlightGear apt.dat, and list closest airports to a given
# lat and lon ... output $max_cnt in closest order ...
sub mycmp_ascend mycmp_decend
top Alphabetic List
findap02.pl 2010/11/15 18:33:49 60,212
# 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
use strict; warnings; Time::HiRes qw( gettimeofday tv_interval );
sub VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit get_bucket_info show_scenery_tiles elim_the_dupes show_airports_found get_tile add_2_tiles is_valid_nav set_average_apt_latlon near_an_airport not_in_world_range near_given_point show_navaids_found load_apt_data load_nav_file search_nav mycmp_ascend_n4 mycmp_ascend mycmp_decend mycmp_decend_dist mycmp_decend_ap_dist trimall ll2xyz xyz2ll coord_dist_sq give_help require_arg deal_with_verbosity local_strip_both_quotes load_input_file parse_args
top Alphabetic List
findap03.pl 2011/11/16 16:33:46 100,021
# AIM: Read FlightGear apt.dat, and find an airport given the name,
# 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
use strict; warnings; Time::HiRes qw( gettimeofday tv_interval );
sub VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit get_bucket_info show_scenery_tiles load_gzip_file load_fix_file load_awy_file elim_the_dupes ctr_latlon_stg get_fg_dist_dir get_g_aptlist_off get_atis_info show_airports_found get_tile get_tile_calc add_2_tiles is_valid_nav set_average_apt_latlon near_an_airport not_in_world_range near_given_point show_nav_list show_navaids_found load_apt_data load_nav_file search_nav_name search_nav mycmp_ascend_n4 mycmp_ascend mycmp_decend mycmp_decend_dist mycmp_decend_az mycmp_decend_ap_dist trimall ll2xyz xyz2ll coord_dist_sq get_fix_sample load_fix_hash search_fix_file get_awy_sample show_awy_item load_awy_hash search_awy_file show_awy_array list_awy_file load_awy_hash2 search_awy_file_prev do_looks_like_fix give_help require_arg local_strip_both_quotes load_input_file deal_with_verbosity parse_args
top Alphabetic List
findaps-win.pl 2011/11/27 20:28:00 24,236
# AIM: There is a BIG findap[nn].pl - This is a SIMPLER version
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file surfRZ sgCartToGeod sgGeodToCart load_apt_data mycmp_decend_dist set_lat_stg set_lon_stg process_in_icao give_help need_arg parse_args
top Alphabetic List
findaps.pl 2011/12/20 12:00:55 31,109
# AIM: There is a BIG findap[nn].pl - This is a SIMPLER version
# 2011-12-12 - Also compield and run in Ubuntu, and added -m num to change output count
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file surfRZ sgCartToGeod sgGeodToCart load_apt_data mycmp_decend_dist set_lat_stg set_lon_stg set_azimuth_stg not_on_track process_in_icao out_xclude_list give_help need_arg parse_args
top Alphabetic List
findapX.pl 2010/08/01 12:46:45 40,034
# AIM: Read X-Plane (Robin Pell) apt.dat, and find an airport given the name,
# geoff mclane - http://geoffmclane.com/mperl/index.htm - 20100801
use strict; warnings; Time::HiRes qw( gettimeofday tv_interval );
sub trimall show_airports_found get_tile add_2_tiles is_valid_nav set_average_apt_latlon near_an_airport show_navaids_found set_apt_version load_apt_data load_nav_file search_nav mycmp_ascend_n4 mycmp_ascend mycmp_decend ll2xyz xyz2ll coord_dist_sq give_help require_arg prtw show_warnings get_bucket_info parse_args
top Alphabetic List
findfiles.pl 2011/12/10 20:44:31 10,188
# AIM: Search for files of a given extension in a directory, recursive by default
# 09/12/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::stat; Digest::MD5 qw(md5 md5_hex md5_base64); Cwd;
sub process_dir VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file process_in_dir process_files give_help need_arg parse_args
top Alphabetic List
findfunc.pl 2010/11/02 20:18:41 21,934
# AIM: Search C/C++ files to find a function...
# 21/10/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::Spec; Cwd;
sub set_debug_value set_debug_on set_debug_off VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw ff_get_root_dir ff_begins_with ff_sub_root_dir ff_get_nxt_sig_char ff_process_file_lines ff_process_in_file ff_show_find ff_process_in_dir ff_show_includes give_help need_arg parse_args
top Alphabetic List
findinc.pl 2011/09/11 18:27:00 41,363
# AIM: Scan all 'system' headers to find input string ...
# 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
use strict; warnings; File::Basename;
sub set_found_in_files_count VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit add_to_files_nc add_to_files_searched get_include_dirs add_2_folders add_sub_directories add_folder_includes load_vc8_cfg load_vc8_bat is_whole_test is_whole_test_nc is_whole C_comment_starts inline_comment_starts C_comment_ends remove_comments process_file process_folder get_vc8_dirs show_config give_help parse_args show_incs_searched
top Alphabetic List
findinfile.pl 2011/06/03 13:59:50 5,973
# AIM: Find a string in a file, using perl regex
# 31/05/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::stat; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
findinlib.pl 2011/04/01 16:16:55 12,608
# 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.
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw get_dump4_array process_file_list process_file_list2 give_help need_arg got_wild process_wild process_in_file scan_dir parse_args
top Alphabetic List
findinpath.pl 2011/10/19 18:45:27 9,180
# AIM: Given an input file, find it in the PATH enviroment variable ...
# 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
use strict; warnings; File::stat; Env qw(PATH);
sub in_file_has_wild prt mydie strip_quotes YYYYMMDD get_nn find_in_path give_help parse_args
top Alphabetic List
findmarray.pl 2009/09/27 10:33:44 9,180
# 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/
use strict; warnings; File::Basename; File::stat;
sub pgm_exit got_2_closing check_line is_c_source_ext is_h_source_ext process_dir scan_file process_files mycmp_decend show_finds
top Alphabetic List
findnumber.pl 2010/07/27 13:03:10 5,108
# AIM: Given a file to search, an da number to search for, see if the number exists on
# and line
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings num_in_range process_file process_dir show_found_lines give_help need_arg parse_args
top Alphabetic List
fixboostlist.pl 2010/04/22 14:30:26 3,115
# AIM: VERY SPECIFIC
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file write_arr_ref cmp_arr_ref
top Alphabetic List
fixcasts.pl 2009/09/11 13:17:52 65,938
# AIM: An attempt at automating 'cast' fixing
# 9/5/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub get_dbg_str prtw show_warnings pgm_exit my_exit get_file_line_rh trim_line_head trim_line_end trim_both_ends remove_comments is_semi_colon_termed is_complete_if_statement is_bare_else get_res_string is_termed_or_brace is_line_ifdef_begin is_line_ifdef_else is_line_ifdef_endif is_line_an_ifdef_type get_previous_terminated_line get_error_lines show_line_range get_single_quoted is_line_convertable return_conv_line insert_after_equals insert_after_equals_simple is_simple_line_A_equ_B rename_2_old_bak get_old_or_bak insert_after_return get_fix_key is_fix_key get_equ_count get_param_list got_current_cast eat_current_cast after_func_insert_this_before_that looks_like_a_simple_function get_if_def_msg split_on_comma_but_not_brackets combine_results_to_one process_error_file show_hash write_new_file perform_fixes_from_hash
top Alphabetic List
fixcmakecache.pl 2011/10/29 16:24:47 9,823
# AIM: VERY SPECIFIC - Read CMakeCache.txt, and adjust paths
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
fixdiff.pl 2010/05/19 13:29:02 2,092
use strict; warnings; File::Basename;
sub prt process_file write2file
top Alphabetic List
fixdsp01.pl 2009/02/25 13:02:19 4,965
# 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
use strict; warnings; File::Basename;
sub get_files fix_line1 process_files
top Alphabetic List
fixdsp02.pl 2009/02/25 14:25:40 4,981
# 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
use strict; warnings; File::Basename;
sub prtw show_warnings get_files fix_line1 process_files
top Alphabetic List
fixdspfiles.pl 2010/09/24 16:23:49 4,722
# AIM: VERY SPECIFIC - Modify a set of DSP files
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file process_in_dir give_help need_arg parse_args
top Alphabetic List
fixfile.pl 2010/08/18 15:02:30 4,515
# AIM: VERY SPECIFIC - Fix a file
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings trim_tail process_file give_help need_arg parse_args
top Alphabetic List
fixrelpath.pl 2007/10/04 15:25:23 3,326
# 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
use strict; warnings; File::Basename;
sub process_sln unix_2_dos fix_rel
top Alphabetic List
fixtitle.pl 2007/08/25 13:16:19 2,505
# 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/
use strict; warnings;
sub split_file_name
top Alphabetic List
fixwmdiag.pl 2010/07/26 18:24:13 5,840
# AIM: VERY SPECIFIC FIX FOR wmdiag.cpp file
# 26/07/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file give_help need_arg parse_args
top Alphabetic List
foo.pl 2005/06/07 16:19:38 870
use XML::Simple; Data::Dumper;
top Alphabetic List
foobar.pl 2010/09/03 18:40:44 1,202
use strict; use warnings; use diagnostics;
sub prt dispSymbols displaylibSymbols
top Alphabetic List
fork.pl 2011/09/25 17:51:32 269
top Alphabetic List
fork02.pl 2011/09/26 12:10:55 4,842
# AIM: Some experiments with fork()
# 24/09/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; IO::Socket;
sub show_warnings pgm_exit prtw prtt exit_child_flag get_fgfs_values run_child open_fgfs run_process
top Alphabetic List
form.pl 2005/06/16 13:33:14 412
top Alphabetic List
fplist.pl 2007/06/04 12:36:15 3,904
# AIM: Read an input DIRECTORY, and output a LIST of FRONTPAGE directories
# to be EXCLUDED ...
# 11/04/2007 - geoff mclane - geoffair.com/mperl
use strict; warnings;
sub get_out_msg give_help require_arg parse_args in_excl_list sub_main process_directory
top Alphabetic List
ftpget01.pl 2006/06/27 19:00:08 2,049
# AIM: To check and test the Perl FTP interface ... 2006.06.27 - geoff.
# ftpfetch01.pl
use Net::FTP;
sub do_the_rest
top Alphabetic List
gen-defines.pl 2011/07/06 17:36:20 5,562
# AIM: VERY SPECIAL
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
genalt.pl 2006/01/10 17:17:46 5,465
# AIM - scan HTML file, and ADD an alt='$fn image', if none found
sub add_alt is_my_file dos_to_unix get_file_name get_path_name prt
top Alphabetic List
genalt02.pl 2010/03/20 18:34:48 6,774
# AIM: Complete re-write of genalt.pl
# 2010/03/20 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings get_img_hash_ref_lc process_file
top Alphabetic List
genascii.pl 2007/02/20 14:31:23 190
top Alphabetic List
gencast.pl 2009/09/05 18:17:36 5,374
# 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/
use strict; warnings; Clipboard;
sub conv_line
top Alphabetic List
genclist.pl 2007/09/29 11:40:18 1,740
# AIM: Convert a set of #define ABC, into a structure
# 28/09/2007 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
top Alphabetic List
gendbgcode.pl 2008/08/02 10:15:01 9,134
# AIM: Add DEBUG to a C/C++ code file
# 01/08/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; constant {
sub C_comment_starts inline_comment_starts C_comment_ends process_file
top Alphabetic List
gendbglist.pl 2009/10/23 12:45:46 2,272
# AIM: VERY SPECIFIC - generate a perl debug stg block
# 2009/10/23 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file
top Alphabetic List
gendef.pl 2010/10/23 19:16:21 16,306
# AIM: Generate a DLL DEF file from a simple list of functions
# 23/10/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings show_missed_conditions pgm_exit prtw process_in_file give_help need_arg load_input_file set_user_cond parse_args
top Alphabetic List
gendotlist.pl 2007/07/15 16:39:13 1,885
# AIM: Given an input folder, scan it recursively, listing all the files
# that beign with a DOT ...
# 15/07/2007 - geoff mclane
use strict; warnings; File::Basename;
sub is_fp_folder process_folder
top Alphabetic List
gendowntable.pl 2010/04/24 19:26:32 5,152
# AIM: Given a set of file, generate a table for download
# 24/04/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; File::stat; Digest::MD5;
sub pgm_exit prtw show_warnings get_html_head get_table_head get_nn get_YYYYMMDD get_hex_digest process_file_list
top Alphabetic List
gendowntable02.pl 2011/04/24 17:25:27 24,377
# 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
use strict; warnings; File::Basename; Cwd; File::stat; Digest::MD5; File::Spec; File::DosGlob 'glob';
sub VERB VERB2 VERB5 VERB9 pgm_exit prtw show_warnings get_html_head get_html_tail get_table_head get_table_header get_nn get_YYYYMMDD get_hex_digest mycmp_decend2 mycmp_decend3 mycmp_decend6 Get_Alpha_Jump process_file_list process_in_files in_exclude_list in_include_list process_dir give_help need_arg load_input_file get_sort_arg pre_process_verbosity add_to_excludes got_wild_char process_wild_card parse_args
top Alphabetic List
genentities.pl 2008/12/01 18:48:07 19,661
# AIM: To prepare a HTML page, with _ALL_ entities up to 32767
# 11/30/2008 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub gen_entities gen_entities_vok gen_entities_two_columns gen_entities_simple get_end_links get_html_head get_html_valid dec2hex get_tidy_txt
top Alphabetic List
genfileindex.pl 2010/08/04 16:07:13 33,184
# 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.
# 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
use strict; warnings; File::Basename; File::stat; Digest::MD5; Cwd;
sub pgm_exit prtw show_warnings get_hex_digest mycmp_decend_date mycmp_nocase is_my_ext is_htm_ext is_graphic_ext is_zips_ext is_css_ext is_txt_ext is_doc_ext is_script_ext is_special_ext is_exclude_ext get_ext_type scan_folder add_link_line add_sub_table add_file_table get_fg_srczips_head write_html_head write_html_head_2 write_html_tail gen_sub_index in_list add_type_table gen_findex YYYYMMDD get_nn is_fp_folder get_image_width get_image_height get_image_size give_help need_arg parse_args
top Alphabetic List
genfolderindex.pl 2007/10/17 14:21:11 16,127
# 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
use strict; warnings; File::Basename; File::stat;
sub is_my_ext is_htm_ext is_graphic_ext is_zip_ext is_css_ext is_txt_ext is_doc_ext is_script_ext get_ext_type scan_folder add_link_line add_sub_table add_file_table write_html_head write_html_tail gen_sub_index in_list gen_findex YYYYMMDD get_nn is_fp_folder
top Alphabetic List
genhtmindex.pl 2007/05/24 16:24:10 5,119
# AIM: Given a BASE folder, seek all HTML files, and build
# an 'index' table, as HTML ...
# Commands: in-folder [-out out-file]
use strict; warnings; File::Basename; File::stat;
sub parse_args my_htm_file is_fp_folder collect_image_files get_nn dos_2_unix
top Alphabetic List
genimgindex.pl 2011/12/22 11:16:12 33,932
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
# Commands: in-folder [-out out-file]
# 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)
# 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
use strict; warnings; File::Basename; File::Spec; File::stat; Cwd;
sub collect_image_files get_htm_file_list drop_thumb_name write_html_file in_excluded_images my_in_file is_fp_folder dos_2_unix unix_2_dos path_2_html get_relative_path_test get_html_bgn get_html_body_bgn get_html_begin_table get_html_end_table get_end_link get_old_link get_html_end get_row_jump get_tidy_valid mycmp_decend get_YYYYMMDD_hhmmss need_arg give_help parse_args
top Alphabetic List
genindex.pl 2005/12/13 17:42:18 2,768
sub get_title is_my_file prt
top Alphabetic List
genindex2.pl 2006/06/26 13:06:48 8,313
# 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 ...
use File::stat;
sub mth_to_num get_title is_my_file is_index eat_sp prt log_close close_log parse_arguments
top Alphabetic List
genindex3.pl 2010/08/04 15:35:42 10,321
# 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;
use File::stat;
sub write_html mth_to_num get_title is_my_file is_index eat_sp prt log_close close_log parse_arguments
top Alphabetic List
genjsarray.pl 2008/06/26 13:49:11 2,687
# AIM: Given an input folder, generate a javascript array of file
# 26/06/2008 geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; File::stat;
sub my_in_file is_fp_folder collect_image_files
top Alphabetic List
genmake.pl 2007/08/07 13:24:50 6,273
# 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
use strict; warnings; File::Basename;
sub prtf len_of_same my_in_file get_in_files require_arg help parse_args prt
top Alphabetic List
genmiscind.pl 2007/05/24 16:33:04 5,427
# AIM: Given a BASE folder, seek all IMAGE files, and build
# an 'index' table of images, as HTML ...
# Commands: in-folder [-out out-file]
use strict; warnings; File::Basename; File::stat;
sub parse_args my_img_file my_htm_file my_in_file is_fp_folder collect_image_files get_nn dos_2_unix
top Alphabetic List
genpass.pl 2008/04/02 19:35:57 7,567
# 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
use strict; warnings;
sub load_passes is_in_previous write_pass_file give_help show_passes delete_pass require_arg parse_args get_password get_r_pass prt mydie
top Alphabetic List
genprimes.pl 2007/03/31 19:18:39 1,206
# 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
use strict; warnings;
top Alphabetic List
gensiteindex.pl 2010/04/15 18:19:30 17,874
# 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/
use strict; warnings; File::Basename; Cwd;
sub process_sub_dir show_warnings pgm_exit prtw os_is_win dos_2_unix unix_2_dos is_fp_folder is_xclude_folder is_excluded_dir is_user_excluded is_this_extent is_htm_ext is_graf_ext is_zip_ext is_css_ext is_txt_ext is_script_ext is_htm_file_ext is_graphic_file_ext is_zip_file_ext is_css_file_ext is_txt_file_ext is_script_file_ext get_file_ext_type type_2_stg add_2_g_file_array get_g_file_array_counts is_def_index_file get_all_files get_html_title get_html_links_array process_html_files mycmp_decend_stgi0 get_html_head build_site_index parse_args
top Alphabetic List
genslnlist.pl 2008/09/16 11:50:36 3,624
use strict; warnings; File::Basename;
sub write_out_file trimall removequotes removerel prt compare_lists
top Alphabetic List
gensource.pl 2009/09/22 17:12:22 2,305
# AIM: VERY SPECIFIC - take a file list, and generate DSP SOURCE lines
# 2009/09/22 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub get_src_block is_c_source_ext is_h_source_ext process_list
top Alphabetic List
genspltable.pl 2011/05/19 14:38:29 6,506
# AIM: VERY SPECIAL - just to get the TABLE in HTML
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw add_oz_tiles add_eu_tiles add_all_tiles
top Alphabetic List
gensrclist.pl 2008/11/04 13:46:20 4,645
# 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
use strict; warnings; File::Basename;
sub give_help parse_args load_directory is_in_array_nc prtw show_warnings
top Alphabetic List
genstruct.pl 2009/08/21 10:37:22 1,938
# AIM: not sure???
use strict; warnings;
top Alphabetic List
genstruct2.pl 2009/09/25 12:56:52 5,705
# AIM: REAL SPECIFIC - generate a structure
# 2009/09/25 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub gen_structure
top Alphabetic List
gensvnexcl.pl 2008/09/14 14:08:38 1,735
# AIM: Read a folder, and build a zip exclude file of all '.svn' folders ...
use strict; warnings;
sub process_folder remove_base
top Alphabetic List
gentable.pl 2007/01/27 12:32:24 13,682
# AIM: Generate a BIG link table ... it can contain all 'links', other files, and/or images
# 20070127 - fix for get_nn only
use File::stat;
sub process_out process_dir get_title in_excluded_dirs in_excluded_fils remove_in_folder is_link_file my_file_ext my_file_name my_file my_path b2KMG get_nn YYYYMMDD
top Alphabetic List
gentime.pl 2008/11/27 14:24:59 1,931
# 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
use strict; warnings; Time::gmtime; File::stat;
sub get_date_time get_YYYYMMDD_hhmmss get_YYYYMMDD_hhmmss_UTC
top Alphabetic List
geo-metar.pl 2011/01/02 19:29:29 319
use strict; warnings; Geo::METAR;
sub prt
top Alphabetic List
geo-metar02.pl 2011/07/22 17:38:41 8,778
# AIM: Get the METAR for a particular ICAO
use strict; warnings; File::Basename; Cwd; Socket; LWP::Simple; Geo::METAR; Data::Dumper;
sub show_warnings pgm_exit prtw celcius_to_fahrenheight fahrenheight_to_celcius trim_metar_txt fetch_url process_in_list give_help need_arg parse_args
top Alphabetic List
geo-taf.pl 2011/01/02 19:56:23 1,193
use strict; warnings; Geo::TAF;
top Alphabetic List
getclopts.pl 2011/01/07 16:54:44 5,102
# AIM: SPECIFIC - Read cl-options.txt file, and convert to hash
# 07/01/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file show_ref_hash give_help need_arg parse_args
top Alphabetic List
getcommits.pl 2011/07/07 19:09:51 13,475
# AIM: Get gitorious commits...
# 07/07/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; LWP::Simple; Cwd;
sub show_warnings pgm_exit prtw process_in_file get_attr_rhash get_url get_html get_html2 show_html_ra give_help need_arg parse_args
top Alphabetic List
getdifflist.pl 2011/03/16 18:25:11 9,007
# AIM: Use the GNU diff utility to prepare a list for winmerge
# 16/03/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw VERB1 VERB2 VERB5 VERB9 check_diff has_repo_folder get_diff_array get_day_off process_inputs give_help need_arg parse_args
top Alphabetic List
getfgxlist.pl 2011/07/09 19:10:08 16,055
# AIM: Get google FGx list...
# 01/07/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; LWP::Simple; Cwd;
sub show_warnings pgm_exit prtw process_in_file get_attr_rhash get_url get_html ignore_tag ignore_text remove_html_entities get_text_in_tag show_text_item process_page_content get_this_page check_a_page show_html_ra give_help need_arg parse_args
top Alphabetic List
getfilecounts.pl 2010/04/13 18:15:56 9,300
# 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/
use strict; warnings; File::Basename; Cwd;
sub process_sub_dir pgm_exit prtw show_warnings os_is_win dos_2_unix is_fp_folder is_xclude_folder is_excluded_dir is_user_excluded is_this_extent is_htm_ext is_graf_ext is_zip_ext is_css_ext is_txt_ext is_script_ext is_htm_file_ext is_graphic_file_ext is_zip_file_ext is_css_file_ext is_txt_file_ext is_script_file_ext get_file_ext_type type_2_stg add_2_g_file_array get_g_file_array_counts get_all_files parse_args
top Alphabetic List
getfunclist.pl 2011/09/24 12:39:42 18,484
# AIM: Given a perl script, scan, and output function list, and line number
# 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
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 prtw show_warnings pgm_exit is_prototype process_in_file compare_line_arrays compare_lists give_help need_arg parse_args
top Alphabetic List
gethost.pl 2007/03/12 19:06:46 948
# AIM:
use strict; warnings; Socket; Data::Dumper;
sub showIPAddress
top Alphabetic List
gethost01.pl 2011/08/13 12:47:34 1,285
# AIM: Get the HOST IP address, using the domain name
# 13/08/2011 - minor update - called by getip.bat
use strict; warnings; Socket;
sub showIPAddress parse_args
top Alphabetic List
gethostbyip.pl 2007/03/13 13:03:46 1,196
# AIM: Get the HOST name, given an IP address
use strict; warnings; Socket;
sub parse_args
top Alphabetic List
gethrefs.pl 2011/10/20 16:10:59 26,487
# AIM: Parse a HTML file, and extract HREF links
# 20/10/2011 - Add user options - parse_args()
# 18/07/2010 - revisit and test...
use strict; warnings; File::Basename; Cwd; constant {
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw show_results get_href_type_const href_type_to_string get_hrefs_from_string parse_file parse_file2 is_my_extension is_htm_extension is_graphic_extension is_zip_extension is_css_extension is_txt_extension is_script_extension get_file_type_const file_type_const_to_string process_folder is_fp_folder in_excludes in_spl_excludes set_status_case get_all_tag_text unix_2_dos mark_in_all_files in_done_files process_references fits_special_filter show_href_list give_help need_arg parse_args
top Alphabetic List
gethrefs02.pl 2010/07/19 19:31:56 27,968
# AIM: Parse a HTML file, and extract HREF links
# 18/07/2010 - revisit and test...
use strict; warnings; File::Basename; constant {
sub pgm_exit show_results url_parse uri_parse2 is_my_extension is_htm_extension is_graphic_extension is_zip_extension is_css_extension is_txt_extension is_code_extension is_script_extension is_bin_extension get_file_type_const file_type_const_to_string fix_rel_url is_http_link get_full_base_href get_href_type_const href_type_to_string get_hrefs_from_string parse_file process_folder is_fp_folder in_excludes in_spl_excludes set_status_case get_all_tag_text unix_2_dos mark_in_all_files in_done_files process_references
top Alphabetic List
getifarray.pl 2009/10/24 17:27:54 2,477
# AIM: Read a Perl script, and output an 'if' array
# 2009/10/24 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file
top Alphabetic List
getimgsize.pl 2008/12/08 16:22:22 3,655
# 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
use strict; warnings; File::Basename;
sub is_fp_folder is_my_file get_jpg_file_list process_image_list
top Alphabetic List
GetIPreglocal.pl 2011/08/13 11:57:28 4,402
use Win32::Registry;
top Alphabetic List
getmissing.pl 2009/09/25 13:51:02 7,850
# AIM: VERY SPECIAL - read getmissing.txt, containing MSVC output, and list the 'unresolved'
# 9/14/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings;
sub remove_res_words ignore_lines_NOT_USED process_file show_hash
top Alphabetic List
getos.pl 2008/07/28 13:19:43 49
top Alphabetic List
getpwd.pl 2008/03/09 20:50:53 2,023
# AIM: To quietly get UNECHOED password,
# BUT DOES NOT WORK IN WINDOWS IMPLEMENTATION!!!
use strict; warnings; POSIX;
sub pwread
top Alphabetic List
gettaf01.pl 2008/01/28 19:05:33 4,384
# 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
use strict; warnings; Socket; LWP::Simple;
sub replace_all_belowsp fetch_url
top Alphabetic List
geturl.pl 2008/01/26 21:04:32 52,547
# 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
use strict; warnings; Socket; LWP::Simple;
sub fetch_url show_taf number_format get_descriptor get_obscuration get_precipitation get_other prtw decode_metar load_airport_file get_fix_len show_airport
top Alphabetic List
geturl02.pl 2008/01/31 19:24:07 89,411
# 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.
use strict; warnings;
sub process_taf_list fetch_url_NOT_USED show_remarks show_taf add_2_exceptions number_format get_descriptor get_obscuration get_precipitation get_other get_weather prtw get_next_hr no_icao_found decode_remarks all_hyphens decode_metar load_airport_file get_fix_len show_airport get_relative_humidity_f
top Alphabetic List
getvars.pl 2008/10/28 12:06:25 1,988
# AIM: Read the error output, and build a set of names used ...
use strict; warnings;
sub process_file
top Alphabetic List
getvcdirs.pl 2010/04/25 17:31:24 12,628
use strict; warnings;
sub load_vc8_cfg load_vc8_bat add_to_files_nc3 get_include_dirs3 get_vc8_dirs3
top Alphabetic List
getwarnlist.pl 2009/09/14 10:01:06 4,092
# 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/
use strict; warnings;
sub process_warn_file show_hash_ref
top Alphabetic List
glGet.pl 2009/06/24 15:38:11 6,719
# AIM: Specialised to process a glGet.xml, and produce a C table
# 23/06/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub process_xml_file get_a_value collect_values
top Alphabetic List
goto-test.pl 2010/10/25 14:57:54 220
use strict; warnings;
top Alphabetic List
gps01.pl 2005/06/27 10:32:12 6,992
sub output latitude longitude
top Alphabetic List
gps02.pl 2005/07/08 04:34:44 24,714
sub do_file_output output latitude longitude add_2_list M0 geo_direct_wgs_84 geo_inverse_wgs_84 dist_m html_head new_row in_col in_colb do_html_file
top Alphabetic List
gps03.pl 2010/12/21 13:32:58 37,541
sub output latitude longitude gps_output process_GPRMC_msg process_sentence M0 geo_direct_wgs_84 geo_inverse_wgs_84 dist_m html_head new_row in_col in_colb get_p_x get_p_y get_p_xy get_graph_msg2 get_graph_msg do_html_table1 do_html_file
top Alphabetic List
guessdsp.pl 2011/10/15 14:48:09 40,609
# AIM: Scan the directory and build a GUESSED DSP file
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw get_user_rt get_user_libs get_user_incs get_user_defs get_user_out get_user_inter local_set_new_user_outs is_project_src_excluded is_project_all_excluded set_default_configs_2 file_in_array create_proj_dsp process_in_dir process_in_file give_help need_arg set_project_type got_colon_split colon_split add_defined_item add_include_item show_auto_help set_auto_flag load_input_file set_exclude_project parse_args
top Alphabetic List
h2h01.pl 2009/08/01 17:07:53 16,229
# AIM: Convert a HTML file, to an online HTML page, color coded...
# 29/07/2009 geoff mclane http://geoffair.net/mperl3
use strict; warnings; File::Basename; File::stat;
sub write_head open_pre close_pre append_tail conv_spaces html_line add_red add_comm add_blue add_eclass add_quot space_split_keep get_tag_split is_entity process_file
top Alphabetic List
hashref.pl 2008/10/29 15:35:35 2,847
# AIM: test returning a HASH reference
# 23/01/2008 - geoff mclane
# see hashref02.pl, for a BETTER example
# see: Yahoo! search 'perl indirect reference'
use strict; warnings;
sub foo add_indirect1 add_indirect2 add_indirect3 get_next_hr_OK is_in_array get_next_hr get_hash prt
top Alphabetic List
hashref02.pl 2008/10/29 15:36:47 2,252
# 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
use strict; warnings;
sub show_hash get_hash
top Alphabetic List
hashtest.pl 2008/11/11 20:29:30 558
# AIM: Test some HASH games
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub show_hash
top Alphabetic List
hasmain.pl 2010/08/09 15:10:25 5,821
# 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
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings trim_include_tail get_includes process_files give_help need_arg parse_args
top Alphabetic List
hexconv.pl 2008/01/12 13:25:28 1,098
sub hex_color_2_rgb rgb_color_2_hex prt
top Alphabetic List
hgt_srtm.pl 2011/05/24 17:18:15 13,549
# AIM: VERY SPECIFIC
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file getSRTM3_Africa getSRTM3_Australia getSRTM3_Eurasia getSRTM3_Islands getSRTM3_North_America getSRTM3_South_America getSRTM1Region1 getSRTM1Region2 getSRTM1Region3 getSRTM1Region4 getSRTM1Region5 getSRTM1Region6 getSRTM1Region7 process_set util_getSRTMContinent util_getSRTM1Region get_func_list show_range process_africa process_all check_for_overlaps
top Alphabetic List
hommage-sql.pl 2011/01/19 17:58:54 3,974
# AIM: VERY SPECIFIC
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
hrefsub.pl 2006/09/17 18:22:38 1,327
use HTML::Entities qw(encode_entities);
sub usage start
top Alphabetic List
hrefsub02.pl 2006/09/17 19:00:02 2,573
use HTML::Entities qw(encode_entities);
sub start
top Alphabetic List
htmconv.pl 2006/04/19 19:02:10 1,555
sub prt
top Alphabetic List
htmimglist.pl 2010/03/19 19:55:12 2,226
# 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
use strict; warnings; File::Basename;
sub parse_file parse_args
top Alphabetic List
html-dom.pl 2011/01/12 14:44:46 3,767
# AIM: Test HTML::DOM interface...
use strict; warnings; File::Basename; Cwd; HTML::DOM; Data::Dumper;
sub show_warnings pgm_exit prtw get_html_dom process_in_file give_help need_arg parse_args
top Alphabetic List
html01.pl 2006/10/26 09:37:34 1,772
use CGI qw(:standard); CGI;
top Alphabetic List
html02.pl 2006/10/26 10:08:22 8,244
# 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' ...
use HTML::Parser (); Data::Dump ();
sub addh h h2_NOT_USED
top Alphabetic List
html03.pl 2009/03/15 14:24:10 403
use HTML::Macro;
sub myfunc
top Alphabetic List
html2text.pl 2006/02/23 16:01:28 1,513
sub parse_arguments prt
top Alphabetic List
htmllib.pl 2010/04/14 15:41:18 28,747
# 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/
use strict; warnings; File::Basename; Cwd;
sub HL_VERB1 HL_VERB5 HL_VERB9 is_closed_tag is_opt_tag can_find_this_tag is_all_optional pop_optional_elements count_optional_elements show_stack_elements get_element_chain get_attribute_hash_ref get_html_file_hash get_href_type dos_2_unix sub_common_folder_unix fix_rel_unix_path get_local_href find_anchor_name list_files_in_hash_ref
top Alphabetic List
htmlparse.pl 2008/07/24 12:21:15 1,106
# AIM: Experiment with HTML Parser
use strict; warnings; HTML::TreeBuilder; HTML::Element;
top Alphabetic List
htmlparse02.pl 2008/07/24 13:56:54 4,476
# AIM:
use strict; warnings; HTML::Parser;
sub start_sub end_sub text_sub process_sub
top Alphabetic List
htmltools.pl 2010/03/31 18:46:26 44,515
# 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
sub set_htools_dbg set_htools_dbg_on set_htools_dbg_off trimbothends tag2newline comments2newline striptag return_tag dropcomments dropcomments_from_array collecthrefs collect_hrefs collecthrefs_nearly_ok collect_anchors ret_anchor_array ret_hrefs_array collectimgs ret_imgs_array removetag remove_script removefont removetagattrib remove_table_attribs removetdattrib removetrattrib substitutions trimblanklines trimblanks trimblanklines_OK_maybe triminlinetd strip_php_script drop_php_from_array htmlexpand dropdoctype html_clean_up1 htmlcleanall get_tag_attr_array split_tag_attrs array_tags2newline clean_line_with_wrap inline_clean_paras inline_clean_td remove_empty_paras remove_doctype
top Alphabetic List
iftest.pl 2008/11/11 18:11:36 1,292
# AIM: Test soem IF patterns, from Makefile.am files
# 11/11/2008 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
top Alphabetic List
imagemagic.pl 2007/06/29 13:42:32 702
# AIM: Test of ImageMagic installation
use strict; warnings; Image::Magick;
top Alphabetic List
imgalt01.pl 2006/10/27 19:49:38 14,048
# 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 ...
use strict;
sub do_substitution get_table_block load_existing_table alltags2newline short_text write_out_file get_tag get_att_hash trim_tail strip_quotes show_att_list get_fr out_alt_list extract_img_alts trimall
top Alphabetic List
imgalt02.pl 2006/11/27 15:00:38 24,736
# 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 ...
use strict;
sub load_htm_file is_same_tag extract_img_names load_xml_file do_substitution get_table_block load_existing_table alltags2newline short_text write_new_xml write_out_file get_tag get_att_hash trim_tail strip_quotes strip_tail_dots show_comb_alt lead_chars_equal get_comb_desc show_alt_list show_att_list get_fr out_alt_list extract_img_alts trimall
top Alphabetic List
imgconvert.pl 2011/06/25 19:28:11 24,214
# AIM: Using imagemagick 'convert' convert full jpg images to thumbnils
use strict; warnings; File::Basename; File::Spec; File::Copy; File::stat; Cwd; IO::Handle;
sub show_warnings pgm_exit prtw get_stdin wait_key_input test_identify test_convert get_imagmagick_versions process_in_file is_my_ext is_graf_ext get_common_name get_image_ratio ensure_path_tail_u ensure_path_tail_d get_html_head get_html_tail process_in_dir give_help need_arg parse_args
top Alphabetic List
imgindex.pl 2008/12/08 16:36:49 4,704
# 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.
use strict; warnings;
sub is_img_file to_web
top Alphabetic List
imgindex02.pl 2011/02/15 13:42:19 12,949
# 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.
use strict; warnings; File::Basename; File::Spec; File::stat; Cwd;
sub show_warnings pgm_exit prtw is_img_file to_web process_img_folder sort_of_images process_img_list parse_args
top Alphabetic List
imglist.pl 2008/12/08 16:51:48 3,175
# AIM: Given a folder, search for ALL image files
# 08/12/2008 - revisited, and works fine as a SIMPLE LIST
# 19/07/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::stat;
sub elapsed_seconds is_my_ext is_graphic_ext is_fp_folder get_image_list
top Alphabetic List
imgratio.pl 2008/12/08 16:51:48 2,485
# 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
# eof - imgratio.pl
use strict; warnings;
sub show_math
top Alphabetic List
imgsize.pl 2008/12/08 16:18:24 1,185
# 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
use strict; warnings;
sub im_get_image_width im_get_image_height im_get_image_size
top Alphabetic List
inctrail.pl 2011/11/12 17:14:31 18,304
# 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/
use strict; warnings; File::Basename; Cwd; File::Spec;
sub VERB1 VERB2 VERB5 VERB9 pgm_exit add_2_included trim_comments join_dir_to_file process_file load_vc8_cfg load_vc8_bat unix_2_dos get_INCLUDE_Folders fix_rel same_folder set_INCLUDE_Folders get_system_num process_files give_help parse_args
top Alphabetic List
inctrail02.pl 2010/04/25 19:31:40 20,162
# AIM: Given an in C/C++ file, check for #include "file" and #include <file>
# statements, and follow the trail, listing ALL included files, included ...
# 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/
use strict; warnings; File::Basename; Cwd;
sub process_file prtw show_warnings pgm_exit check_file_dir os_is_windows sub_common_folder_dos sub_in_folder get_INCLUDE_Folders is_excluded_inc unix_2_dos fix_rel add_2_found_list mycmp_ascend_asc mycmp_ascend show_found_list show_by_folder add_2_included is_same_file C_comment_starts inline_comment_starts C_comment_ends same_folder parse_args
top Alphabetic List
indexone.pl 2010/05/05 13:29:53 7,749
# AIM: Using the file input, create a HTML table item
# 05/05/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat;
sub pgm_exit prtw show_warnings u2d d2u sub_common_folder_dos sub_in_folder YYYYMMDD get_nn get_table_begin process_file give_help need_arg precheck_verb parse_args
top Alphabetic List
inphones.pl 2008/02/01 12:40:14 3,022
# AIM: A check of the number from one file, are present in another ...
use strict; warnings;
sub checklines
top Alphabetic List
input.pl 2008/03/09 17:22:36 868
# AIM: Test getting User keyborad input ...
# 09/03/2008 - geoff mclane - http://geoffair.net/mperl/samples
use strict; warnings;
sub get_input
top Alphabetic List
installed.pl 2008/08/07 19:11:58 2,541
# AIM: To enumerate the installed modules ...
use strict; warnings; ExtUtils::Installed;
top Alphabetic List
IsLeapYear.pl 2010/08/21 14:10:59 1,276
use strict; warnings;
sub prt IsLeapYear
top Alphabetic List
isnumber.pl 2009/08/24 16:29:41 1,342
# AIM: Various way to determine if a 'variable' is a number...
# 24/08/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub is_number
top Alphabetic List
iso3166.pl 2006/08/27 17:52:24 77,551
# AIM: Output ISO 3166 table, and
sub adjustedtabletext processtxt processtxt2 html_next_tag html_next_text html_text_2_end inlinetagmax
top Alphabetic List
iso3166bld.pl 2006/08/27 18:07:54 77,815
# AIM: Output ISO 3166 table, and
sub adjustedtabletext processtxt Array2Text processtxt2 html_next_tag html_next_text html_text_2_end inlinetagmax
top Alphabetic List
iso639.pl 2006/09/25 18:37:14 7,291
# AIM to download the table from the site, and build a 'validation' table ...
use strict; warnings; LWP::Simple;
sub is_the_same write2file trimall html_subs
top Alphabetic List
k2m.pl 2007/04/04 11:53:24 1,092
# AIM: convert kilometer to miles
# geoff mclane - http://geoffmclane.com/mprerl/index.htm - 2007-04-04
use strict; warnings;
sub parse_args
top Alphabetic List
keyboard.pl 2010/12/07 20:10:41 1,128
# AIM: Simple test of polling the keyboard, ussing 'ReadKey'
# 07/12/2010 geoff mclane http://geoffair.net/mperl
use warnings; strict; Term::ReadKey;
sub got_keyboard forever_loop
top Alphabetic List
km2miles.pl 2008/06/27 12:57:35 896
# AIM: Take kilometer input, and display statute miles,
# using 1 Kilometer = 0.62137 Miles
# 27/06/2008 geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub parse_args prt mydie
top Alphabetic List
lib_acscan-new.pl 2010/09/29 11:41:49 59,738
use strict; warnings; File::Basename;
sub scan_configure_ac_file set_dbg_shell_actions ac_set_dbg_extra ac_get_dbg_val_var ac_get_dbg_var ac_set_dbg_var ac_get_dbg_range ac_get_dbg_stg ac_set_debug_flags ac_set_all_dbg_on ac_set_all_dbg_off ac_do_dir_scan ac_is_file_in_scan ac_match_dir_for_c_source show_ac_hash ac_is_shell_action ac_local_space_split grep_for_value ac_return_regex2 ac_return_regex get_cut_range ac_set_by_shell_action ac_split_macros ac_add_2_ac_macros ac_do_macro_subs accumulate_ac_macro accumulate_with_back ac_am_conf_line_error ac_trim_all2 trim_ac_define
top Alphabetic List
lib_acscan.pl 2011/10/14 15:23:53 62,908
use strict; warnings; File::Basename;
sub scan_configure_ac_file set_dbg_shell_actions ac_set_dbg_extra ac_get_dbg_val_var ac_get_dbg_var ac_set_dbg_var ac_get_dbg_range ac_get_dbg_stg ac_set_debug_flags ac_set_all_dbg_on ac_set_all_dbg_off ac_do_dir_scan ac_is_file_in_scan ac_match_dir_for_c_source show_ac_hash ac_is_shell_action ac_local_space_split grep_for_value ac_return_regex2 ac_return_regex get_cut_range ac_set_by_shell_action ac_split_macros ac_add_2_ac_macros ac_do_macro_subs accumulate_ac_macro accumulate_with_back ac_am_conf_line_error ac_trim_all2 trim_ac_define
top Alphabetic List
lib_amscan-bad.pl 2011/01/28 19:15:32 141,196
use strict; warnings; File::Basename; Cwd;
sub am_process_AM_file am_set_dbg_base am_dbg_val_var am_get_dbg_var am_get_dbg_stg am_get_dbg_range am_set_dbg_var am_clear_dbg_var am_set_all_dbg_on am_set_all_dbg_off skip_these_strings am_macro_split valid_for_am_test show_scalar_hash show_all_subs key_in_cond_TRUE key_in_cond_FALSE key_in_cond_TRUE_or_FALSE key_in_a_conditional am_test_for_substitution am_test_for_substitution_VERY_OK_BUT value_not_in_first get_value_from_hash show_target_list process_target_list a_source_does_exist a_source_does_exist_ok am_extract_from_hash is_macro_type add_2_hoh_subs add_key_value_2_hash not_same_dirs show_scalar_ref_hash create_anon_funct check_for_LDADD set_new_user_outs enhance_with_headers reprocess_the_lists get_anon_proj_hash am_list_to_arrays am_mycmp_decend am_ignored_extent am_out_dir_scan_info
top Alphabetic List
lib_amscan-new.pl 2010/09/29 17:51:48 106,849
use strict; warnings; File::Basename; Cwd;
sub am_set_dbg_base am_dbg_val_var am_get_dbg_var am_get_dbg_stg am_get_dbg_range am_set_dbg_var am_clear_dbg_var am_set_all_dbg_on am_set_all_dbg_off skip_these_strings am_macro_split valid_for_am_test show_scalar_hash show_all_subs key_in_cond_TRUE key_in_a_conditional am_test_for_substitution value_not_in_first get_value_from_hash show_target_list process_target_list a_source_does_exist a_source_does_exist_ok am_extract_from_hash is_macro_type add_key_value_2_hash am_process_AM_file show_scalar_ref_hash create_anon_funct check_for_LDADD set_new_user_outs_prog set_new_user_outs_libs enhance_with_headers am_list_to_arrays am_out_dir_scan_info
top Alphabetic List
lib_amscan.pl 2011/10/14 14:12:49 143,646
use strict; warnings; File::Basename; Cwd;
sub am_process_AM_file am_set_dbg_base am_dbg_val_var am_get_dbg_var am_get_dbg_stg am_get_dbg_range am_set_dbg_var am_clear_dbg_var am_set_all_dbg_on am_set_all_dbg_off skip_these_strings am_macro_split valid_for_am_test show_scalar_hash show_all_subs key_in_cond_TRUE key_in_cond_FALSE key_in_cond_TRUE_or_FALSE key_in_a_conditional am_test_for_substitution am_test_for_substitution_VERY_OK_BUT value_not_in_first get_value_from_hash show_target_list process_target_list a_source_does_exist a_source_does_exist_ok am_extract_from_hash is_macro_type add_2_hoh_subs add_key_value_2_hash not_same_dirs show_scalar_ref_hash create_anon_funct eliminate_libpath_duplicates elim_the_lib_path_dupes check_for_LDADD set_new_user_outs enhance_with_headers reprocess_the_lists get_anon_proj_hash am_list_to_arrays am_mycmp_decend am_ignored_extent am_out_dir_scan_info
top Alphabetic List
lib_confscan.pl 2010/09/10 17:41:56 17,234
use strict; warnings;
sub conf_macro_split macro_replacement show_if_stack show_if_stack3 show_if_stack4 closed_with_fi process_in_file show_macs
top Alphabetic List
lib_dsphdrs.pl 2011/10/28 11:14:34 85,664
use strict; warnings; Cwd;
sub set_dbg_props set_blank_header_group get_fetch_function get_default_sub3 get_default_sub_ref get_default_source_filter get_default_header_filter get_app_type_hash_ref_short get_app_type_4_short get_app_type_stg strip_quotes_02 dos_2_unix_02 scan_DSP_lines process_DSP_file get_list_of_subs get_project_name get_common_dsp_head get_targ_type_ref get_based_on_ref get_APP_TYPE_string get_project_type is_dll_project is_app_project get_based_on_stg add_targ_type add_def_config3 add_def_config get_configs_array3 get_configs_array get_hash_version add_message_section get_compile_block get_project_flag show_rh2 get_dsp_head_stg get_def_lib_list get_dsp_console_rel get_dsp_console_dbg get_dsp_app_rel get_dsp_app_dbg get_dsp_slib_rel get_dsp_slib_dbg get_dsp_dynalib_rel get_dsp_dynalib_dbg get_dsp_tail get_dsw_head get_dsw_tail get_dsp_header_text fg_get_runtime_val_2_lts get_app_conf_type adjust_app_type_per_subsystem get_balance_of_line_bump_offset get_if_props add_dotrel_if_none write_hash_to_DSP3 get_proj_begin get_proj_end get_proj_depends3 get_bat_head add_bat_copy write_proj_DSW3 get_simple_DSW_txt
top Alphabetic List
lib_dspscan.pl 2011/01/10 15:40:32 29,225
use strict; warnings; File::Basename; File::stat; Cwd;
sub set_dbg_show_sources3 set_load_debug set_load_debug_on set_load_debug_off ld_fix_rel_path3 ext_is_c_source3 file_is_c_source3 ext_is_h_source3 file_is_h_source3 is_h_special3 set_group_and_filter split_rsc_items3 combine_rsc_items3 process_DSP3
top Alphabetic List
lib_fgio.pl 2011/09/29 19:25:54 52,320
# 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
use strict; warnings; File::Basename; Cwd; IO::Socket; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); Math::Trig;
sub set_wait_ms_get is_all_numeric set_decimal1_stg set_int_stg get_curr_posit get_curr_env get_curr_comms get_curr_consumables get_curr_gps get_curr_engine get_curr_Klocks get_curr_aplocks get_curr_sim get_curr_aps get_curr_gear_wow fgfs_get_gear0_wow fgfs_get_gear1_wow fgfs_get_gear2_wow fgfs_get_park_brake fgfs_get_left_brake fgfs_get_right_brake fgfs_get_gear_down fgfs_get_gear_wow fgfs_show_gear_wow fgfs_connect fgfs_disconnect get_exit fgfs_send fgfs_set setprop fgfs_get_w_time sleep_ms fgfs_get getprop fgfs_get_gps fgfs_get_engines fgfs_get_K_locks fgfs_get_position fgfs_get_environ fgfs_get_comms fgfs_get_consumables 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_coord fgfs_get_coord2 fgfs_get_alt fgfs_get_alt2 fgfs_get_agl2 fgfs_get_ground_elev fgfs_get_hdg_true fgfs_get_hdg_mag set_SenecaII set_f_14b fgfs_get_aps_head_bug_degs fgfs_get_aps_targ_alt fgfs_get_aps_targ_bank fgfs_get_aps_targ_pitch fgfs_get_aps_targ_rate fgfs_get_aps_targ_roll fgfs_get_aps_targ_speed fgfs_get_aps_targ_yaw fgfs_get_aps_true_heading fgfs_get_aps show_autopilot_settings fgfs_get_hdg_bug fgfs_set_hdg_bug fgfs_get_agl fgfs_get_aspd_kts fgfs_get_gspd_kts fgfs_get_eng_running fgfs_get_eng_rpm fgfs_get_eng_throttle fgfs_get_eng_running2 fgfs_get_eng_rpm2 fgfs_get_eng_throttle2 fgfs_get_K_ah fgfs_get_K_pa fgfs_get_K_pm fgfs_get_K_ra fgfs_get_K_rm fgfs_get_K_hh fgfs_get_apl_alt fgfs_get_apl_head fgfs_get_apl_speed fgfs_get_apl_yaw fgfs_get_ap_locks show_ap_locks fgfs_get_wind_speed fgfs_get_wind_heading fgfs_get_wind_east fgfs_get_wind_north fgfs_get_metar fgfs_get_mag_var fgfs_get_comm1_active fgfs_get_comm1_stdby fgfs_get_comm1 fgfs_get_comm2_active fgfs_get_comm2_stdby fgfs_get_comm2 fgfs_get_nav1_radial fgfs_get_nav1_active fgfs_get_nav1_stdby fgfs_get_nav1 fgfs_get_nav2_active fgfs_get_nav2_stdby fgfs_get_nav2 fgfs_get_adf_active fgfs_get_adf_stdby fgfs_get_adf fgfs_get_fuel1_imp fgfs_get_fuel1_us fgfs_get_fuel2_imp fgfs_get_fuel2_us fgfs_get_fuel_lbs fgfs_get_fuel_kgs fgfs_get_f14b_fuel_left fgfs_get_f14b_fuel_right fgfs_get_f14b_C_gus fgfs_get_f14b_C_lbs fgfs_get_f14b_LBB_gus fgfs_get_f14b_LBB_lbs fgfs_get_f14b_RBB_gus fgfs_get_f14b_RBB_lbs fgfs_get_f14b_LS_gus fgfs_get_f14b_LS_lbs fgfs_get_f14b_RS_gus fgfs_get_f14b_RS_lbs fgfs_get_aero fgfs_get_fdm fgfs_get_root fgfs_get_desc fgfs_get_sim_info get_position_stg get_current_position got_flying_speed got_keyboard set_dist_stg set_dist_m2kmnm_stg set_hdg_stg1 set_lat_stg set_lon_stg set_hdg_stg secs_HHMMSS2 show_environ show_comms show_consumables show_K_locks show_engines show_engines_and_fuel show_sim_info in_world_range set_hdg_stg3 set_int_dist_stg5
top Alphabetic List
lib_html.pl 2011/07/09 17:17:43 14,925
use strict; warnings;
sub get_attr_no_value get_tag_normal_value get_tag_close_value get_tag_closed_value get_tag_closea_value get_tag_special_value get_tag_comment_value get_tag_text_value get_attr_refhash is_auto_closed_tag is_optional_auto_closed_tag deal_with_script deal_with_pre get_html_refarray show_html_refarray get_html_body_only drop_html_tags drop_div_tag
top Alphabetic List
lib_params.pl 2010/10/31 09:56:54 12,196
sub get_ref_params eliminate_dupes add_key_2_added init_common_subs2 gen_param_check validate_ref_param set_params_ref init_common_subs get_root_dir
top Alphabetic List
lib_srcscan.pl 2011/03/06 15:53:17 9,097
# 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
use strict; warnings; File::Basename;
sub src_scan recursive_src_scan full_src_scan_of_files
top Alphabetic List
lib_utils.pl 2011/10/21 11:51:50 35,723
use strict; warnings; Time::gmtime; File::stat; File::Basename;
sub get_def_src_filt get_def_hdr_filt get_def_rcs_filt get_def_spl_filt get_def_src_grp get_def_hdr_grp get_def_rcs_grp get_def_spl_grp is_ulog_open open_log prt_log prt mydie close_log write2file append2file trim_leading trim_tailing trim_ends trim_all path_u2d path_d2u get_relative_path_reversed_words get_relative_path get_rel_dos_path rename_2_old_bak rename_2_old_bak_plus add_quotes is_in_array is_c_source is_c_source_extended is_h_source is_h_special is_h_source_extended is_resource_file is_config_file_like is_text_ext_file strip_dotrel space_split space_split_ref space_split_to_rh get_only_new_items array_2_hash_on_equals strip_square_braces strip_quotes strip_both_quotes massage_command show_file_stat fix_rel_path3 fix_rel_path line_2_hash_on_equals get_vs_vars_bat get_vs_install_dir add_to_files_lc vc_get_include_dirs2 get_string_with_sep get_includes_string get_defines_string get_libpaths_string get_nn secs_HHMMSS get_YYYYMMDD lu_get_YYYYMMDD_hhmmss lu_get_YYYYMMDD_hhmmss_UTC lu_get_hhmmss_UTC util_bytes2ks
top Alphabetic List
lib_vcscan.pl 2011/10/28 12:14:32 86,562
use strict; warnings; File::Basename; Cwd;
sub svc_xml_to_lines svc_get_dbg_stg svc_set_dbg_val svc_set_dbg_on svc_set_dbg_off svc_set_dbg_item get_default_ref_hash get_item_from_hash get_per_file_hash get_last_src_offset get_current_xline_stg get_project_configs svc_get_project_name_stg get_project_srcs_ref add_vs_project_items extract_curr_items svc_add_props_to_hash add_vs_config_item get_prj_key_info_ref show_hash_results3 adjust_inter_out_dirs adjust_runtime_to adjust_output_name delete_nodefaultlib_all massage_command3 get_line_hash_missed get_ct_line_hash_missed get_nodeflib_string process_vc_conf_tool_tag process_vc_file_tool_tag get_cfgs_array_order add_any_per_file_items3 get_xln_stg get_clean_seek_item process_VC10_lines process_VC_lines process_VCPROJ3
top Alphabetic List
lib_xml.pl 2010/12/05 12:54:32 245
# AIM: Gathering together useful 'xml' parsing functions
use strict; warnings; File::Basename;
top Alphabetic List
linecount.pl 2008/01/03 19:39:12 1,939
# 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/
use strict; warnings;
sub trimall prt process_file process_args
top Alphabetic List
lineendings.pl 2006/09/27 14:00:12 4,697
use strict; warnings; LWP::Simple;
sub show_line_ending check_line_ending force_dos_le force_unix_le
top Alphabetic List
lineends.pl 2007/10/11 15:26:50 3,034
# AIM: Check the line ending of a file
use strict; warnings;
sub add_2_found process_directory process_file
top Alphabetic List
linkhtml.pl 2010/04/13 19:14:30 27,322
# 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/
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB5 VERB9 pgm_exit prtw show_warnings is_closed_tag is_opt_tag can_find_this_tag is_all_optional pop_optional_elements count_optional_elements show_stack_elements get_element_chain get_attribute_hash_ref get_html_file_hash get_href_type dos_2_unix fix_rel_unix_path get_local_href find_anchor_name show_hash_ref give_help parse_args
top Alphabetic List
linkhtml02.pl 2010/04/14 15:15:00 4,646
# 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/
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB5 VERB9 pgm_exit prtw show_warnings give_help parse_args
top Alphabetic List
list2array.pl 2010/07/16 17:46:16 3,901
# AIM: Take a file list, and build a perl array item.
# 16/07/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings process_file give_help need_arg parse_args
top Alphabetic List
listap01.pl 2007/01/14 16:37:56 2,194
# AIM: Read FlightGear apt.dat.gz file, and list AIRPORTS within ...
use strict; warnings; Env qw(HOME FG_ROOT);
top Alphabetic List
listexes.pl 2011/11/04 17:28:38 11,529
# 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
use strict; warnings; File::Basename; File::Spec; File::stat; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw is_my_type process_in_dir get_short_form sub_base_dir sub_current_directory list_files process_in_file give_help need_arg parse_args
top Alphabetic List
listfpfolders.pl 2008/07/17 18:59:39 2,574
# 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
use strict; warnings;
sub elapsed_seconds is_fp_folder get_folder_list
top Alphabetic List
listlibs.pl 2011/11/04 17:29:53 12,052
# AIM: Given an input directory, list the *.lib found. Do not duplicate if 'name.lib' and 'named.lib'
# 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
use strict; warnings; File::Basename; File::Spec; File::stat; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw is_my_type process_in_dir get_short_form sub_base_dir sub_current_directory list_files process_in_file give_help need_arg parse_args
top Alphabetic List
listobj.pl 2010/06/21 14:32:27 5,687
# AIM: Given a folder, make a sub-folder list containing *.obj files
# 20/06/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub process_a_folder pgm_exit prtw show_warnings is_obj_file process_folder process_folders show_obj_list give_help need_arg parse_args
top Alphabetic List
listregex.pl 2009/08/29 14:41:00 10,828
# AIM: Read perl files, and list all 'regex' expressions found
# 8/29/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub prtw show_warnings scan_directory return_regex process_perl_files show_regex_list
top Alphabetic List
listrepodirs.pl 2010/02/01 13:49:44 6,627
# 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/
use strict; warnings; File::Basename; File::stat;
sub b2ks2 elapsed_seconds is_repo_folder contains_repo_folder get_folder_list get_batch_text
top Alphabetic List
ll2dms.pl 2011/07/27 15:41:13 5,061
# AIM: Convert a lat, lon to degree, minutes, seconds
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file process_lat_lon give_help need_arg parse_args
top Alphabetic List
ll2xyz.pl 2008/12/17 20:17:19 9,743
# AIM: Convert latitude, logitude to x,y,z co-ordinates
use strict; warnings; Time::HiRes qw(gettimeofday tv_interval); constant PI => 4 * atan2(1, 1);
sub do_time_tests do_lat_lon do_lat_lon_ok ll2xyz_ok xyz2ll_ok coord_dist_sq_ok coord_distance_m_ok lat_lon_distance_m_ok
top Alphabetic List
loadtable.pl 2006/09/03 16:17:50 3,794
# AIM: Load a HTML table into a multidimensional array
use strict;
sub get_old_index get_table_array
top Alphabetic List
location.pl 2005/06/27 12:13:38 3,789
use strict; warnings; Data::Dumper;
top Alphabetic List
logfile.pl 2011/04/16 19:22:54 7,853
use File::Basename;
sub open_log prt mydie close_log write2file write_a_file append2file writebinfile is_in_array trim_all file_extension file_title file_dirname rename2oldbak path_u2d path_d2u get_relative_path get_rel_dos_path strip_quotes fix_rel_path3
top Alphabetic List
m4scan-old.pl 2010/10/07 12:30:21 32,773
# AIM: Scan an M4 auto-tools MACRO file
# 05/10/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::Spec; Cwd;
sub show_warnings pgm_exit prtw m4_accumulate_with_back m4_accumulate_ac_macro get_ref_params remove_dnl trim_head_tail m4_comma_split m4_split_macro m4_split_macro_quite_good m4_split_macro_very_ok m4_split_macro_ok m4_split_macro_nearly_ok m4_process_file setup_ref_params give_help need_arg parse_args
top Alphabetic List
m4scan.pl 2010/10/08 19:07:04 23,765
# AIM: Scan an M4 auto-tools MACRO file
# 05/10/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::Spec; Cwd;
sub show_warnings pgm_exit prtw m4_accumulate_with_back m4_accumulate_ac_macro get_ref_params remove_dnl trim_head_tail m4_comma_split m4_comma_split_OK m4_split_macro invert_string m4_process_file setup_ref_params give_help need_arg parse_args
top Alphabetic List
main.pl 2005/12/05 17:41:14 390
use Tree;
top Alphabetic List
main02.pl 2005/12/05 14:43:54 236
use Tree;
top Alphabetic List
mainorg.pl 2005/12/05 14:19:54 215
use Tree;
top Alphabetic List
makesrcs.pl 2010/08/23 19:02:19 39,959
# 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
use strict; warnings; File::Basename; Cwd;
sub set_debug_val set_debug_on set_debug_off prtw show_warnings pgm_exit unix_2_dos fix_rel expand_it get_target_subject is_target_line is_iffy_line prtdw deal_with_iffy get_sources add_obj_item add_hdr_item has_hdr_ext split_into_objs show_macros list_ref_hash convert_obj_to_files list_objects list_headers os_is_win sub_root_dir get_dir_list get_file_type get_root_dir_list show_dir_list_debug get_file_list get_def_dsp_hash_ref set_default_configs_2 write_temp_dsp is_src_type list_targets give_help need_arg parse_args
top Alphabetic List
makesrcs02.pl 2010/09/13 11:17:42 60,337
# AIM: Read a makefile, and (hopefully) list the SOURCES
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub get_sources set_debug_val get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off set_debug_on set_debug_off prtw show_warnings pgm_exit unix_2_dos fix_rel expand_it expand_it_better get_target_subject get_target_subject_OLD is_target_line is_iffy_line prtdw deal_with_iffy get_sources_PREVIOUS add_obj_item add_hdr_item has_hdr_ext split_into_objs show_macros list_ref_hash convert_obj_to_files list_objects list_headers os_is_win sub_root_dir get_dir_list get_file_type get_root_dir_list show_dir_list_debug get_file_list get_def_dsp_hash_ref set_default_configs_2 write_temp_dsp is_src_type list_targets give_help show_dbg_help load_input_file need_arg parse_args
top Alphabetic List
match.pl 2011/06/29 10:49:01 8,116
# AIM: Testing 'matching' to wild functions
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file match_with_wild matches_wild has_wild in_user_excludes give_help need_arg parse_args
top Alphabetic List
math-trig.pl 2011/02/20 12:34:35 1,777
use strict; warnings; Math::Trig;
sub prt set_decimal1_stg set_int_stg do_calcs
top Alphabetic List
math_trig.pl 2011/02/23 13:48:42 13,020
# AIM:
use strict; warnings; File::Basename; Cwd; Math::Trig;
sub get_locations show_warnings pgm_exit prtw set_decimal1_stg set_int_stg get_dist_stg_nm set_runway_ends init_runway_array get_dist_nm_for_alt_ft show_calcs show_tan3 do_calcs get_feet_per_min do_calc2 give_help need_arg parse_args
top Alphabetic List
md5.pl 2010/02/02 13:31:51 529
use strict; warnings; Digest::MD5;
sub get_hex_digest
top Alphabetic List
md5sum.pl 2005/11/30 12:31:22 615
top Alphabetic List
merc2wsg84.pl 2011/10/31 19:40:36 8,166
# 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
use strict; warnings; File::Basename; Cwd; Math::Trig;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw convert_lon_lat convert_mx_my process_in_file in_world_range show_extents give_help need_arg parse_args
top Alphabetic List
mergetest01.pl 2006/12/20 13:40:30 12,893
# AIM: To run some tests on a WinMerge build ...
# Based on testdiff.pl, by Perry Rapp, 2006-02-07
use strict; warnings;
sub testdiffs1 testdiffs test3set testpair testdiff processArgs doUsage rpterr checkRequiredPrograms getDiff2merge getWinMerge
top Alphabetic List
meters2feet.pl 2010/03/04 13:58:54 453
# AIM: Simple conversion of meters to feet...
# 04/03/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings;
top Alphabetic List
meters2miles.pl 2005/10/25 14:35:38 466
top Alphabetic List
miles2meters.pl 2005/10/22 15:24:40 433
top Alphabetic List
modlist.pl 2008/08/07 15:06:44 480,755
sub data mycmp_decenda mycmp_ascenda mycmp_ascendac
top Alphabetic List
module-version.pl 2008/08/07 19:28:38 202
use strict;
top Alphabetic List
modvers.pl 2008/08/07 19:28:50 775
use CPAN;
top Alphabetic List
moonstuff.pl 2007/02/12 18:09:38 10,823
use strict; warnings; Math::Trig;
sub html_begin html_end floor ceil round out_of_circle get_bg_color out_color_wheel simple_circle in_circ gen_circle out_moon_circle hypotenuse
top Alphabetic List
morse.pl 2011/07/30 11:00:54 4,924
# AIM: A perl representation of morse
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file gen_table give_help need_arg parse_args
top Alphabetic List
movedsp.pl 2011/01/10 16:26:17 80,563
# 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
use strict; warnings; File::Basename;
sub show_warnings pgm_exit prtw get_def_dsp_hash_ref get_tool_set_ref set_per_cfg_name check_cfg_name check_targ_type add_dsp_config_item space_split_with_quotes2 get_library_stg_hash get_library_stg_hash2 get_config_stg_hash get_cpp_line get_link_line return_remainder_stg no_case_file_defined return_lib_remain_stg process_library_stg2 process_config_stg2 process_config_stg show_name_and_type set_default_group_and_filter set_group_and_filter scan_dsp_file_lines process_dsp_file process_dsp_file_ok_but process_dsp_list
top Alphabetic List
mph2fps.pl 2007/01/05 13:31:06 344
# AIM: Convert MILE PER HOUR to FEET PER SECOND
use strict; warnings;
top Alphabetic List
mph2knot.pl 2011/08/16 15:15:26 388
# AIM: Convert MILE PER HOUR to KNOTS
# 1 Miles Per Hour = 0.86897699264 Knot.
use strict; warnings;
top Alphabetic List
mruvc8-02.pl 2011/11/02 14:24:43 15,173
# 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 ...
use strict; warnings; File::Basename; File::Copy; File::stat; Win32::Registry; Win32::TieRegistry( Delimiter => "
sub mycmp_decend_n0 show_REG_list Is_In_List get_tag remove_href Read_Previous Out_2_File exclmsbase YYYYMMDD2 rename_2_old_bak LTrim RTrim prt2 dos_2_unix
top Alphabetic List
mruvc8.pl 2007/04/11 12:07:48 9,575
# AIM: To enumerate the Microsoft Visual Studio 8 Express (MSVC8) from registry
# geoff mclane - http://geoffmclane.com/mperl/samples/index.htm - 20070402
use strict; warnings; File::Basename; File::Copy; Win32::Registry; Win32::TieRegistry( Delimiter => "
sub Is_In_List Read_Previous Out_2_File exclmsbase show_REG_list YYYYMMDD2 rename_2_old_bak LTrim RTrim trimall prt2
top Alphabetic List
msfs-fp.pl 2010/11/23 14:02:41 15,619
# AIM: Read and show details of the MSFS2002 FLight Plan file
# 09/11/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw get_data_points get_sample_output split_cvs get_degs_lat_or_lon get_d_ll get_ref_point add_ref_point add_way_point mycmp_ascend show_ref_pts process_in_file give_help need_arg deal_with_verbosity parse_args
top Alphabetic List
msh2sh.pl 2005/05/03 15:31:08 8,031
use HTML::Parser (); Data::Dump ();
sub addh h h2
top Alphabetic List
msvc8incs.pl 2008/11/23 16:29:00 17,652
# AIM: Show content of MSVC8 'configuration' file ...
use strict; warnings;
sub show_inc_array show_x_hash show_vc_hash expand_env_variables compare_hash_values get_vc_vars xml_to_lines space_split array_2_hash_on_equals strip_quotes cased_hash_var get_xml_file_hash prtw show_warnings
top Alphabetic List
msvcvers.pl 2009/11/14 20:16:16 6,628
# 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
use strict; warnings; File::stat; Cwd;
sub prt eliminate_dupes get_file_name ver_count scanfiles YYYYMMDD is_my_files scandir
top Alphabetic List
myDebug2.pl 2010/09/01 14:33:26 3,012
use strict; warnings;
sub new set_dbg_base get_base get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off
top Alphabetic List
nasa-srtm-range.pl 2009/04/26 10:17:19 2,185
# AIM: very specific - search an FTP list, for files within range
# 26/04/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub process_file show_list
top Alphabetic List
newfolders.pl 2007/03/19 18:32:00 3,889
# 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
use strict; warnings;
sub submain process_folder parse_args
top Alphabetic List
newproj.pl 2010/08/07 14:31:06 17,090
# AIM: QUITE SPECIAL - Take the BLANK project, and given a new ouput directory
# and project name, copy BLANK to there, and change the names...
# 06/08/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; File::Copy;
sub get_in_dir get_in_files get_new_file_name fix_solution_file fix_vcproj_file fix_source_items fix_cxx_file fix_hxx_file fix_text_file pgm_exit prtw show_warnings test_files_exist make_out_dir test_files_not_exist chomp_lines copy_all_files give_help need_arg check_for_verbose parse_args
top Alphabetic List
numsort.pl 2006/11/22 11:28:13 1,938
# AIM: Sort a file, taking the first columns as numbers ...
use strict; warnings;
sub sortlines mycmp_ascend
top Alphabetic List
ObjectVariableTest.pl 2010/09/03 16:44:39 1,573
sub print deposit setEuroRate
top Alphabetic List
oldindex.pl 2006/09/18 13:43:02 13,046
use strict; warnings;
sub oi_prt trim_line_ends load_php_stx trim_line get_old_index transfer_old_table3 mark_old_index get_table_array tag2newline collecthrefs
top Alphabetic List
opendir01.pl 2010/07/24 15:52:16 2,085
# AIM: Open a directory, and get a file list with a specific extension
# 24/07/2010 - some small enhancements
use strict; warnings;
sub prt get_files show_array_ref process_in_folder
top Alphabetic List
opendir02.pl 2010/07/24 19:03:20 11,667
# 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
use strict; warnings; File::Basename; File::stat;
sub prt file_dirname trimall is_date_entry is_time_entry dbs_d2u is_a_respository_dir file_array_from_dir_list get_YYYYMMDD_hhmmss2 try_std_open_dir get_nn show_ref_file_array try_dir_command
top Alphabetic List
order.pl 2005/06/07 18:12:26 940
use Test; XML::XPath;
top Alphabetic List
osgvers.pl 2008/11/24 17:05:01 2,894
# 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/
use strict; warnings;
sub get_args check_version prt show_version
top Alphabetic List
osm-gpx.pl 2011/12/22 11:41:23 11,948
# AIM: Read a *.gpx XML file, and list points
# 20/12/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file_xml process_in_file_NOT_USED show_ref_arr give_help need_arg parse_args
top Alphabetic List
osm-load.pl 2011/03/05 20:06:35 22,363
# AIM: Load an XML OSM file
use strict; warnings; File::Basename; Cwd;
sub in_standard show_warnings pgm_exit prtw getElement getAttributeValue returnNode returnSegment returnID returnTags in_world_range process_in_file set_decimal1_stg set_decimal2_stg set_decimal3_stg set_int_stg get_dist_stg_nm show_ref_hash give_help need_arg parse_args
top Alphabetic List
p2h.pl 2007/06/02 14:10:12 43,357
# AIM: Convert a single perl file to HTML, using perl.css style
# USE: p2h <input> [<output>]
use strict; warnings; File::stat; File::Basename;
sub get_suffix add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words is_built_in in_built_in is2lt sans_quotes conv_spaces html_line in_efix_list mangled_email fix_email add_2_used get_uform add_2_lines get_balance get_comment add_quote2 process_file trim_line trimall add_metas write_out_file YYYYMMDD b2KMG parse_arguments
top Alphabetic List
p2h01.pl 2006/08/28 11:54:34 5,382
sub add_class_a add_class_b add_class_c add_class_d add_class_e add_class_q in_res_words in_built_in process_file trim_line load_stx_file prt
top Alphabetic List
p2h02.pl 2006/04/22 13:38:16 21,152
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval nanosleep ); strict;
sub write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words in_built_in is2lt sans_quotes process_file trim_line load_stx_file prt
top Alphabetic List
p2h03.pl 2006/04/22 20:30:04 35,478
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval nanosleep ); strict;
sub write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words in_built_in is2lt sans_quotes conv_spaces html_line get_uform add_quote2 process_file trim_line load_stx_file prt
top Alphabetic List
p2h04.pl 2010/09/03 17:12:52 49,083
use Time::HiRes qw( gettimeofday tv_interval ); strict;
sub get_code_section write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words in_built_in is2lt sans_quotes conv_spaces html_line get_uform add_quote2 add_2_lines get_balance get_comment process_file trim_line load_stx_file add_color_chart fix_email mangled_email prt mydie process_args
top Alphabetic List
p2hall.pl 2007/01/27 12:33:41 65,655
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval nanosleep ); strict; File::Copy; File::stat;
sub mycmp_decend2 add_new_table my_file_name my_file_ext my_file_type in_existing get_existing_files get_input_files reset_variables generate_index write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words in_built_in is2lt sans_quotes conv_spaces html_line get_uform add_quote2 add_2_lines get_balance get_comment process_file trim_line load_stx_file fix_email mangled_email YYYYMMDD get_nn prt mydie write2file get_old_index mark_old_index get_table_array tag2newline
top Alphabetic List
p2hall01.pl 2007/01/27 12:34:16 73,820
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval nanosleep ); strict; File::Copy; File::stat;
sub mycmp_decend2 is_valid_link has_valid_files add_jump_table out_link_line add_new_table my_file_name my_file_ext my_file_type in_existing get_existing_files get_input_files reset_variables generate_index write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words is_built_in in_built_in in_built_in_ok is2lt sans_quotes conv_spaces html_line get_uform add_quote2 add_2_lines get_balance get_comment process_file trim_line load_stx_file fix_email mangled_email YYYYMMDD get_nn b2KMG prt mydie write2file get_old_index transfer_old_table3 mark_old_index get_table_array tag2newline collecthrefs add_metas
top Alphabetic List
p2hall02.pl 2007/05/26 13:09:08 84,833
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval ); strict; File::Copy; File::stat; File::Basename;
sub mycmp_decend2 is_valid_link has_valid_files add_jump_table out_link_line add_new_table my_file_name my_file_ext my_file_type_old my_file_type in_existing get_existing_files get_input_files reset_variables add_use_table generate_index write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words is_built_in in_built_in in_built_in_ok is2lt sans_quotes conv_spaces html_line get_uform add_quote2 add_2_lines get_balance get_comment add_2_used process_file trim_line trimall load_stx_file in_efix_list fix_email mangled_email YYYYMMDD get_nn b2KMG prt mydie write2file get_old_index transfer_old_table3 mark_old_index get_table_array tag2newline collecthrefs add_metas
top Alphabetic List
p2hall03.pl 2010/02/02 19:02:05 93,932
use Time::HiRes qw(usleep gettimeofday tv_interval ); strict; File::Copy; File::stat; File::Basename;
sub mycmp_decend2 is_valid_link has_valid_files add_jump_table get_link_txt out_link_line get_menu_row add_new_table my_file_name my_file_ext_NOT_USED my_file_type in_existing get_existing_files get_input_files reset_variables add_use_table generate_index write_out_file add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote in_res_words is_built_in in_built_in in_built_in_ok is2lt sans_quotes conv_spaces html_line get_uform add_quote2 add_2_lines get_balance get_comment add_2_used process_file trim_line trimall load_stx_file in_efix_list fix_email mangled_email YYYYMMDD get_nn b2KMG prt mydie write2file get_old_index transfer_old_table3 mark_old_index get_table_array tag2newline collecthrefs add_metas prtw show_warnings
top Alphabetic List
p2html.pl 2005/05/06 20:25:52 11,632
use strict;
sub prt addTTitem add_html_style add_html_head add_html_tail add_color_samp tolog do_line_parse htmlise
top Alphabetic List
p2html10.pl 2005/05/20 10:03:36 66,720
use strict; warnings;
sub prt addTTitem_simp addTTitem_bkgrd addTTitem_bkgrd1 addTTitem_bkgrd2 addTTitem_bkgrd2p addTTitem_full add_html_style add_body_style_NOT_USED add_html_head add_html_table add_html_tail a2f n_row n_col c_row c_col n_hcol c_hcol add_color_samp tolog xceptchr is_a_quote get_a_quote get_line_array2 get_line_array get_space_array do_line_parse parse_it htmlise is_regex_spl gotdelim add_ucomment add_usingleq add_udoubleq add_uscalar add_uarray add_uhash add_uresword add_ubfuncs add_udefault add_upunc isbracechr ispunctuat isresword isbinfun doparsereset get_parse_stats showarrcnts get_line_num do_the_table do_stx_file
top Alphabetic List
p2html11.pl 2005/05/22 12:39:36 63,785
use strict; warnings;
sub prt a2f n_row n_col c_row c_col n_hcol c_hcol add_color_samp tolog xceptchr is_a_quote get_a_quote get_line_array2 get_line_array get_space_array do_line_parse parse_it htmlise is_regex_spl gotdelim add_ucomment add_usingleq add_udoubleq add_uscalar add_uarray add_uhash add_uresword add_ubfuncs add_udefault add_upunc isbracechr ispunctuat isresword isbinfun do_PARSE_reset do_line_reset get_parse_stats showarrcnts get_line_num do_the_table add_include_tables add_html_style
top Alphabetic List
p2html11b.pl 2005/05/22 04:01:42 67,565
use strict; warnings;
sub prt addTTitem_simp addTTitem_bkgrd addTTitem_bkgrd1 addTTitem_bkgrd2 addTTitem_bkgrd2p addTTitem_full add_html_style add_body_style_NOT_USED a2f n_row n_col c_row c_col n_hcol c_hcol add_color_samp tolog xceptchr is_a_quote get_a_quote get_line_array2 get_line_array get_space_array do_line_parse parse_it htmlise is_regex_spl gotdelim add_ucomment add_usingleq add_udoubleq add_uscalar add_uarray add_uhash add_uresword add_ubfuncs add_udefault add_upunc isbracechr ispunctuat isresword isbinfun do_PARSE_reset do_line_reset get_parse_stats showarrcnts get_line_num do_the_table do_stx_file add_include_tables
top Alphabetic List
p2html12.pl 2007/01/27 15:58:21 64,459
use strict; warnings;
sub prt a2f n_row n_col c_row c_col n_hcol c_hcol add_color_samp tolog xceptchr is_a_quote get_a_quote get_line_array2 get_line_array get_space_array do_line_parse parse_it htmlise is_regex_spl gotdelim add_ucomment add_usingleq add_udoubleq add_uscalar add_uarray add_uhash add_uresword add_ubfuncs add_udefault add_upunc isbracechr ispunctuat isresword isbinfun do_PARSE_reset do_line_reset get_parse_stats showarrcnts get_line_num do_the_table add_include_tables add_html_style
top Alphabetic List
p2html2.pl 2005/05/07 14:12:50 15,616
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail add_color_samp tolog do_line_parse htmlise gotdelim
top Alphabetic List
p2html3.pl 2005/05/07 16:00:40 16,840
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail add_color_samp tolog do_line_parse htmlise gotdelim
top Alphabetic List
p2html4.pl 2005/05/08 04:44:10 20,041
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail add_color_samp tolog xceptchr do_line_parse htmlise gotdelim
top Alphabetic List
p2html5.pl 2005/05/08 19:49:56 29,997
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail add_color_samp tolog xceptchr do_line_parse htmlise gotdelim ispunctuat showarrcnts
top Alphabetic List
p2html6.pl 2005/05/09 07:54:54 30,779
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail a2f n_row n_col c_row c_col add_color_samp tolog xceptchr do_line_parse htmlise gotdelim ispunctuat showarrcnts
top Alphabetic List
p2html7.pl 2005/05/09 19:10:18 36,857
use strict; warnings;
sub prt addTTitem addTTitem_full add_html_style add_html_head add_html_tail a2f n_row n_col c_row c_col add_color_samp tolog xceptchr is_a_quote get_a_quote do_line_parse htmlise gotdelim ispunctuat showarrcnts
top Alphabetic List
p2html8.pl 2005/05/10 01:50:52 39,973
use strict; warnings;
sub prt addTTitem_simp addTTitem_vOK addTTitem_full add_html_style add_html_head add_html_table add_html_tail a2f n_row n_col c_row c_col add_color_samp tolog xceptchr is_a_quote get_a_quote do_line_parse htmlise gotdelim ispunctuat isresword isbinfun doparsereset get_parse_stats showarrcnts get_line_num
top Alphabetic List
p2html9.pl 2005/05/13 09:24:50 59,300
use strict; warnings;
sub prt addTTitem_simp addTTitem_bkgrd addTTitem_full add_html_style add_body_style_NOT_USED add_html_head add_html_table add_html_tail a2f n_row n_col c_row c_col n_hcol c_hcol add_color_samp tolog xceptchr is_a_quote get_a_quote get_line_array2 get_line_array do_line_parse htmlise is_regex_spl gotdelim add_ucomment add_usingleq add_udoubleq add_uscalar add_uarray add_uhash add_uresword add_ubfuncs add_udefault add_upunc isbracechr ispunctuat isresword isbinfun doparsereset get_parse_stats showarrcnts get_line_num do_the_table
top Alphabetic List
p2htxt01.pl 2006/07/11 14:46:04 6,367
use Time::HiRes qw(usleep ualarm gettimeofday tv_interval nanosleep ); strict;
sub write_out_file html_line2 read_in_file prt
top Alphabetic List
p2hutil.pl 2005/11/24 15:19:44 5,688
sub add_html_head add_html_head_a add_html_table add_html_tail add_html_tail_a addTTitem_simp addTTitem_bkgrd addTTitem_bkgrd1 addTTitem_bkgrd2 addTTitem_bkgrd21 addTTitem_bkgrd2p addTTitem_full add_body_style_NOT_USED
top Alphabetic List
package.pl 2010/01/29 14:13:39 714
# AIM: Simple use of 'package' declaration
use strict; warnings;
sub new toHex
top Alphabetic List
pageview02.pl 2006/07/06 15:18:24 8,137
# AIM: Get info from net, and generate a page viewer ...
use Win32::Internet;
sub out_htm_head add_form out_htm_tail in_exclude
top Alphabetic List
pageviewer.pl 2006/07/04 16:27:46 7,645
# AIM: Get info from net, and generate a page viewer ...
use Win32::Internet;
sub out_htm_head add_form out_htm_tail in_exclude
top Alphabetic List
parse-xml.pl 2010/01/26 19:44:36 51,602
# AIM: My attempt at my OWN XML parser
use strict; warnings; Data::Dumper;
sub prtw show_warnings pgm_exit get_first_line is_cdata is_doctype ret_stack_text ret_stack_text_simple get_ref_tag get_att_ref get_save_ref check_ele_stack scan_xml_text parse_xml_text parse_xml_file fix_xml_path show_rh_kv show_ref_hash get_all_children get_content_text get_element_text get_element_hash_for_array show_fg_sim_references show_fg_sim_references_ok play_with_xml_ref
top Alphabetic List
parse-xml02.pl 2010/01/31 16:12:10 50,923
# 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
use strict; warnings; Data::Dumper;
sub UNKNOWN_NODE ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE CDATA_SECTION_NODE ENTITY_REFERENCE_NODE ENTITY_NODE PROCESSING_INSTRUCTION_NODE COMMENT_NODE DOCUMENT_NODE DOCUMENT_TYPE_NODE DOCUMENT_FRAGMENT_NODE NOTATION_NODE ELEMENT_DECL_NODE ATT_DEF_NODE XML_DECL_NODE ATTLIST_DECL_NODE prtw show_warnings pgm_exit reduce_indent_5_2 xml_get_content_hr xml_get_type_name ret_stack_text ret_stack_text_simple check_ele_stack scan_xml_text has_utf_16_BOM parse_xml_file get_warn_error_text get_xml_ref_hash_text write_xml_output xml_pgm_exit is_in_array_ref is_in_array_ref_0 get_att_ref show_ele_hash transfer_ele_hash xml_set_hash_ref_value xml_get_hash_ref_content enum_hash_ref enum_array_ref enum_unknown_ref xml_get_all_children show_child_hash show_child_hash2 show_fg_sim_references give_help need_arg parse_args
top Alphabetic List
parse-xml03.pl 2010/01/30 15:12:50 43,310
# 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
use strict; warnings; Data::Dumper;
sub prtw show_warnings pgm_exit xml_get_content_hr xml_get_type_name ret_stack_text ret_stack_text_simple check_ele_stack scan_xml_text has_utf_16_BOM parse_xml_file get_warn_error_text get_xml_ref_hash_text write_xml_output xml_pgm_exit is_in_array_ref is_in_array_ref_0 get_att_ref show_ele_hash transfer_ele_hash xml_set_hash_ref_value xml_get_hash_ref_content enum_hash_ref enum_array_ref enum_unknown_ref xml_get_all_children show_child_hash show_child_hash2 show_fg_sim_references give_help need_arg parse_args
top Alphabetic List
patch-conv.pl 2010/05/19 17:46:34 4,503
use strict; warnings;
sub prt write2file remove_x_param process_file give_help need_arg parse_args
top Alphabetic List
perl-list.pl 2011/12/23 15:52:46 21,989
# AIM: SPECIALISED - Just to make a perl-list.txt and perl-list.htm file
# 23/12/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::stat; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw get_type_number get_type_text is_text_type conv_spaces html_line show_hash_type show_array_type cmpNoCase get_meta_style get_doctype get_unique_link gen_alpha_list process_rh process_file process_files process_directory give_help need_arg parse_args
top Alphabetic List
perms.pl 2008/03/31 12:34:54 4,758
# 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
use strict; warnings;
sub show_perms
top Alphabetic List
person01.pl 2008/10/11 12:53:24 576
use strict; warnings; Person;
top Alphabetic List
php2htm01.pl 2007/01/27 12:35:40 38,893
# AIM: Convert PHP file sources to colour coded HTML
# geoffmclane.com - 2006.09.13
# 20070127 - fix for get_nn only
use strict; warnings; File::stat; File::Copy;
sub add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote reset_count get_existing_files write_chart add_metas write_out_file conv_spaces html_line get_dir_files get_split_line reset_lines enter_php enter_com in_stx_RW in_stx_BI process_php_quote parse_php process_php parse_com process_com process_htm show_line_bits process_line process_file process_files my_get_path my_get_filename my_get_ext my_get_filetitle YYYYMMDD b2KMG get_nn trim_line load_html_stx is_htm_tag is_in_htm load_php_stx do_stx_load generate_index
top Alphabetic List
php2htm02.pl 2007/07/31 14:21:58 63,693
# AIM: Convert PHP file sources to colour coded HTML
# geoffmclane.com - 2006.09.13
# 31/07/2007 - add some more WARNINGS to output
use strict; warnings; File::stat; File::Copy;
sub is_built_in transfer_old_table3 mark_old_index get_table_array process_tbl_arr process_tbl_arr3 get_old_index tag2newline collectoi_hrefs add_red add_class_b add_blue add_class_d add_class_e add_class_f add_class_o add_class_v add_quote reset_count in_existing get_existing_files write_chart add_metas write_out_file conv_spaces html_line remove_html_encode get_dir_files get_split_line reset_lines enter_php enter_com add_2_BI add_2_RW in_stx_RW in_stx_BI process_php_quote process_php_comment parse_php process_php parse_com process_com get_following parse_htm process_htm show_line_bits process_line process_file process_files my_get_path my_get_filename my_get_ext my_get_filetitle YYYYMMDD b2KMG get_nn trim_line load_html_stx is_htm_tag is_htm_att is_in_htm load_php_stx do_stx_load out_link_line mycmp_decend2 add_jump_table add_new_table generate_index
top Alphabetic List
plandevol-eng.pl 2006/04/19 11:14:22 41,759
use strict; POSIX qw(ceil floor); Getopt::Long; IO::Socket; Env qw(HOME FGROOT);
sub get_prop set_prop send connect round coord_dist_sq ll2xyz distance_ llll2dir_ configure_extremite getPositionParTelnet nav_to_ram getNavAidNearestMidPoint construction_route teste_existence_procedure mise_en_forme_procedure sid_star plan_de_vol fichier_csv fichier_wp sortie_standard main
top Alphabetic List
plandevol-eng01.pl 2006/11/08 10:06:32 46,434
use strict; POSIX qw(ceil floor); Getopt::Long; IO::Socket; Env qw(HOME FGROOT);
sub get_prop set_prop send connect round coord_dist_sq ll2xyz distance_ llll2dir_ configure_extremite getPositionParTelnet nav_to_ram getNavAidNearestMidPoint construction_route teste_existence_procedure mise_en_forme_procedure sid_star plan_de_vol fichier_csv fichier_wp sortie_standard main
top Alphabetic List
print-literals.pl 2010/09/03 19:29:23 557
top Alphabetic List
printenv.pl 2007/03/19 12:19:18 533
# AIM: print out the environment strings ...
use strict; warnings;
top Alphabetic List
probe-os.pl 2009/10/14 18:13:59 1,963
# 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
use strict; warnings; Probe::Perl; Env qw(COMSPEC); Config;
top Alphabetic List
proclist.pl 2006/06/14 18:46:46 2,465
use Win32::OLE qw( in ); Win32::OLE::Variant;
sub wlog prt mydie close_log
top Alphabetic List
QtPro.pl 2011/12/01 15:21:29 24,684
# 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
use strict; warnings; File::Basename; Cwd;
sub process_curr_lines VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file process_cleaned_lines process_source show_includes get_first_token show_array show_class_items collect_class process_all_lines process_ref_hash show_qt_missed give_help need_arg parse_args
top Alphabetic List
rads2degs.pl 2010/08/17 12:38:08 543
# AIM: Given input of RADIANS, output DEGREES
use strict; warnings; Math::Trig;
top Alphabetic List
randgif1.pl 2005/06/04 08:28:10 1,208
sub send_image
top Alphabetic List
ratio.pl 2011/11/16 12:29:24 5,953
# AIM: Given a size like 3296x2472, and a desired width, like 400, find height
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file show_ratio give_help need_arg parse_args
top Alphabetic List
read-keyboard.pl 2009/04/13 11:55:16 383
use strict; warnings;
top Alphabetic List
readcfg.pl 2006/04/11 12:27:16 11,458
sub add_2_msvc add_2_libs add_2_libpaths read_am2dsprc give_little_help set_config parse_arguments subroot check_lib_paths check_inc_paths check_includes
top Alphabetic List
readlog.pl 2009/12/04 15:31:42 25,886
# AIM: VERY SPECIFIC - read a big 'log' file,
# sort, and show the information
# 15/11/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings; Bucket2; File::Basename;
sub in_my_range secs2hms process_in_log process_in_log2 process_in_file fix_length show_ref_hash2 show_file_buckets show_ref_hash process_in_log4 show_hash4 process_in_log5
top Alphabetic List
recent.pl 2007/04/02 15:24:05 13,836
# 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 ...
use strict; warnings; Encode; Win32::Registry; Win32::TieRegistry( Delimiter => "
sub get_keys_data split_line_at delete_previous write_keys_data show_REG_list nice_string html_line html2text trim_tail
top Alphabetic List
redbrick.pl 2007/12/28 20:13:48 2,901
use strict; warnings;
top Alphabetic List
ref.pl 2008/01/23 14:47:19 1,349
# AIM: test returning a HASH reference
# 23/01/2008 - geoff mclane
sub foo get_hash prt
top Alphabetic List
refs.pl 2005/04/25 04:11:38 1,752
use CGI qw(:standard);
sub showhello
top Alphabetic List
reg01.pl 2006/10/07 10:27:24 3,239
use strict; warnings; Win32::Registry;
top Alphabetic List
reg02.pl 2006/10/07 10:35:58 2,050
use Win32::Registry; Win32::TieRegistry( Delimiter => "
top Alphabetic List
reg03.pl 2006/10/08 12:45:18 3,818
use Getopt::Long; Win32::Registry;
top Alphabetic List
reg04.pl 2006/10/30 18:18:28 4,581
use Win32::Registry;
top Alphabetic List
reg05.pl 2008/11/23 11:22:21 3,227
# AIM: get ONE entry from the registry ...
# 30/10/2006 geoff mclane http://geoffair.net/mperl
use strict; warnings; Win32::Registry;
sub get_key_name Show_Key
top Alphabetic List
regclass.pl 2010/10/23 12:44:49 11,044
# 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...
use strict; warnings; Win32::Registry; Data::Dumper;
sub show_warnings pgm_exit prtw trimall get_short_dump show_keys prt31 prt32 give_help need_arg parse_args
top Alphabetic List
relative.pl 2010/08/25 18:31:01 7,799
# AIM: Given a TARGET path, get RELATIVE path FROM a directory
sub set_dbg_rel2 path_d2u path_u2d get_relative_path get_relative_path_2 get_rel_dos_path
top Alphabetic List
relinehtm.pl 2009/03/28 12:17:04 2,960
# AIM: To reline HTML, just per tags
sub process_array2
top Alphabetic List
relinejs.pl 2011/08/24 14:33:20 8,119
# AIM: Attempt to reline javescript files...
# 24/08/2011 - Review and improvements...
# 20/12/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_file write_ref_arr give_help need_arg parse_args
top Alphabetic List
relinetxt.pl 2008/08/03 14:13:35 2,449
# AIM: SPECIAL: Reline a text file
# 03/08/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub process_file
top Alphabetic List
reltest.pl 2008/02/14 15:20:18 1,143
# AIM: Test my relative.pl module ...
use strict; warnings; Cwd;
sub sub_base
top Alphabetic List
replace01.pl 2007/07/30 22:59:47 6,136
# 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
use strict; warnings; File::Basename;
sub process_file is_remove1 is_remove2 get_in_files is_my_ext is_js_ext is_css_ext is_swf_ext is_ico_ext is_known_ext
top Alphabetic List
samp01.pl 2005/05/12 06:01:06 1,691
use strict;
top Alphabetic List
scanconfac.pl 2010/02/12 19:23:10 10,718
# AIM: Scan a configure.ac file
use strict; warnings; File::Basename;
sub set_all_debug_on scan_one_configure_file do_hash_setup sac_do_macro_sub2 sac_do_macro_sub show_hash_ref show_array_ref
top Alphabetic List
scanvc.pl 2010/08/03 12:43:24 76,357
use strict; warnings; File::Basename; Cwd;
sub svc_xml_to_lines svc_get_dbg_stg svc_set_dbg_val svc_set_dbg_on svc_set_dbg_off svc_set_dbg_item get_default_ref_hash get_item_from_hash get_per_file_hash get_last_src_offset get_current_xline_stg get_project_configs svc_get_project_name_stg get_project_srcs_ref add_vs_project_items extract_curr_items svc_add_props_to_hash add_vs_config_item get_prj_key_info_ref show_hash_results3 massage_command3 get_line_hash_missed get_ct_line_hash_missed get_nodeflib_string process_vc_conf_tool_tag process_vc_file_tool_tag get_cfgs_array_order add_any_per_file_items3 get_xln_stg get_clean_seek_item process_VC_lines process_VCPROJ3
top Alphabetic List
secsinyear.pl 2005/06/24 04:11:14 135
top Alphabetic List
sendmail01.pl 2008/05/05 12:04:50 768
use Mail::Mailer;
sub get_from get_to
top Alphabetic List
server0.pl 2005/05/05 14:05:28 1,773
use strict; Socket;
top Alphabetic List
server2.pl 2005/05/09 04:31:52 551
use IO::Socket::INET;
top Alphabetic List
server3.pl 2005/05/05 14:52:16 1,262
use strict; Socket; Carp;
sub logmsg
top Alphabetic List
server4.pl 2005/05/05 15:50:14 1,400
use IO::Socket;
top Alphabetic List
server5.pl 2005/05/06 02:46:30 1,745
use IO::Socket;
top Alphabetic List
server6.pl 2011/09/24 18:46:15 1,142
use strict; warnings; IO::Socket;
top Alphabetic List
set-bucket.pl 2009/03/25 14:20:07 6,835
# AIM: A perl rendering of the set_bucket() function in Simgear
# 04/03/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub gen_index sg_bucket_span get_tile set_bucket gen_base_path show_bucket
top Alphabetic List
setdbgflag.pl 2010/08/26 14:41:25 2,534
use warnings;
sub get_dbg_var get_dbg_stg get_dbg_range set_dbg_var clear_dbg_var set_all_dbg_on set_all_dbg_off
top Alphabetic List
setifdef.pl 2009/09/16 17:51:36 922
# AIM: Given a line on the clipboard, extract, duplicate, and set #ifdef _MSC_VER around it
# and back into the clipboard
use strict; warnings; Clipboard;
top Alphabetic List
sgutil.pl 2007/03/21 17:11:24 4,026
# AIM: some SG services
sub gen_index llxy_2_dll conv_bucket_index sg_bucket_span lon_lat_to_index
top Alphabetic List
sh2htm.pl 2011/08/02 15:00:25 18,224
# AIM: Parse a shell script, and render in HTML
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw get_code_section add_color_chart write_out_file conv_spaces html_line html_char in_res_words in_built_in add_class_a add_class_b add_class_c add_quote process_in_file give_help need_arg parse_args
top Alphabetic List
sha1sum.pl 2005/11/30 12:34:26 605
top Alphabetic List
show-@inc.pl 2010/01/12 19:42:01 64
top Alphabetic List
show-bucket.pl 2011/08/06 12:09:43 23,052
use strict; warnings; Bucket;
sub VERB1 VERB2 VERB5 VERB9 pgm_exit prtw show_warnings get_bucket_center_txt show_bucket_center show_bucket get_all_buckets_same_1X1 get_buckets_around show_inds sgBucketDiff sgBucketOffset store_bucket test_diff_offset_functions show_buckets_in_bounds process_input give_help need_arg parse_args
top Alphabetic List
showalbumdat.pl 2007/08/06 17:04:57 56,503
# AIM: To find the albums in a gallery photos.dat file ...
# 02/08/2007 - geoff mclane - http://geoffair.net/mperl ...
use strict; warnings; File::Basename;
sub show_dir_marks mark_in_dirs mark_master mark_as_sub get_album_name get_lines get_in_files is_my_ext is_dat_ext is_photos_dat is_fp_folder is_excluded_folder
top Alphabetic List
showanchors.pl 2010/03/27 19:09:30 13,303
# AIM: Given a HTML file, extract an show each ANCHOR in the file
# 2010/03/25 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings get_anchor_hash_ref_lc get_anchor_list process_file get_href_type get_href_type_name show_ref_hash show_help require_arg parse_args
top Alphabetic List
showbuildsrcs.pl 2009/08/21 14:43:52 6,060
# AIM: Analyse the build.log for sources compiled
use strict; warnings;
sub trim_act_dir has_c_param get_c_param has_o_param get_o_param process_in_file output_entry process_srcs
top Alphabetic List
showcmd.pl 2007/05/26 13:45:59 387
# AIM: Just out the command arguments found, if any.
use strict; warnings;
sub show_cmd
top Alphabetic List
showdefs.pl 2010/09/21 15:53:50 6,094
# AIM: Given a C/C++ page, show items like '#define FOO'
# 21/09/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
showdsp.pl 2010/10/17 19:23:03 32,705
# AIM: Read in a DSW/DSP file, and show results
# 17/10/2010 - More enhancements... like if NO sources
# 01/06/2010 - Lots of enhancements...
# 01/05/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; File::stat; File::Spec; Cwd;
sub set_debug_items set_debug_on set_debug_off set_all_debug VERB1 VERB2 VERB3 VERB5 VERB9 prtw show_warnings pgm_exit unix_2_dos sub_common_folder sd_get_nn sd_get_YYYYMMDD show_dsp_rh collect_per_option get_include_list get_runtime_opt get_defined_list add_def_defines add_def_libraries get_vclike_ref_from_dsp_ref process_one_dsp give_help parse_args
top Alphabetic List
showenv.pl 2005/06/15 06:49:26 992
sub prt_tail prt
top Alphabetic List
showhrefs.pl 2011/11/21 13:47:41 21,809
# 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
use strict; warnings; File::Basename; Socket; LWP::Simple; constant {
sub get_type_href VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw get_file_title get_IPAddress process_file anchor_href file_has_my_ext get_href_type get_href_type_name mycmp_decend0 mycmp_decend1 get_anchor_hash_ref_lc get_URL get_URI clean_URL get_page process_in_files give_help need_arg parse_args
top Alphabetic List
showincs.pl 2011/11/12 15:53:17 32,444
# AIM: Read a C/C++ file and show included files...
# 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...
use strict; warnings; File::Basename; File::Spec; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw si_process_in_file fix_dir_string begins_with sub_first_from_second_if sub_root_dir si_do_dir_scan si_is_file_in_scan do_dir_scan get_anon_hash get_dir_scan_rh get_dir_scan_hash get_msvc_includes in_msvc_includes in_unix_includes si_show_found_list setup_params give_help need_arg parse_args
top Alphabetic List
showjava.pl 2010/07/17 14:29:44 62,743
# AIM: Scan a java source, and show imports and dependencies
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings in_java_words process_file give_help need_arg parse_args
top Alphabetic List
showpiperxml.pl 2010/12/08 15:25:49 8,560
# AIM: VERY SPECIFIC - Quikc output of an XML file contents...
use strict; warnings; File::Basename; Cwd;
sub prt trim_leading trim_tailing trim_ends trim_all show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
showplayback.pl 2010/12/25 12:13:39 55,550
# 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
use strict; warnings; File::Basename; Cwd; Time::HiRes qw( usleep gettimeofday tv_interval );
sub show_warnings pgm_exit prtw get_autopilot_nodes get_playback_nodes is_valid_ch_hash get_decimal_stg get_heading_stg get_sg_dist_stg process_in_file nodes_are_equiv prt_name_node_dir show_ref_hash find_chunk_obj_by_off find_chunk_by_name get_item_val_by_name get_latlonalt get_latlonalt_msg compare_hdgpitchroll compare_latlonalt compare_arrays_test get_brake_msg process_flight give_help need_arg parse_args
top Alphabetic List
showsm01.pl 2006/11/13 14:00:26 1,773
# AIM: To show my Start Menu in different ways ...
use strict; warnings;
sub process_dir is_lnk_file
top Alphabetic List
showsrcs.pl 2005/12/07 06:23:38 6,599
# AIM: Find and display SOURCES from Makefile.am in a FOLDER ...
sub find_vcproj get_nxt_dir get_rel_dir dos_to_unix
top Alphabetic List
showsrcs2.pl 2005/12/08 19:42:00 28,140
# 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 ...
use Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep );
sub find_vcproj get_nxt_dir get_rel_dir dos_to_unix rel_dir read_am_file split_in_dir quote_cond_val unquote_cond_val prt prteol scan_configure scan_one_configure_file
top Alphabetic List
showsrcs3.pl 2005/12/09 15:46:42 31,654
# 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 ...
use Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep );
sub find_vcproj get_nxt_dir get_rel_dir dos_to_unix rel_dir read_am_file split_in_dir quote_cond_val unquote_cond_val conditional_true_when check_ambiguous_conditional prt prteol scan_configure scan_one_configure_file load_vcproj load_dsp
top Alphabetic List
showsymbols.pl 2010/09/04 09:52:26 1,885
# AIM: Enumerate the namespace sort of 'hash'...
# 04/09/2010 geoff mclane http://geoffair.net/mperl
use strict; use warnings; use diagnostics;
sub getSymbolType getSymbol dispSymbols
top Alphabetic List
showvcincs.pl 2010/12/04 12:59:02 7,081
# AIM: To find the MSVC 'INCLUDE' direcories
# 04/12/2010 - review
# 14/09/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file ac_do_dir_scan do_dir_scan get_anon_hash get_dir_scan_rh give_help need_arg parse_args
top Alphabetic List
shwmake.pl 2009/09/19 15:07:36 12,501
use strict; warnings; File::Basename; Cwd;
sub prtw show_warnings add_to_cmd_hash get_next_non_space get_gcc_out show_gcc_output show_cmd_example trim_end_line get_a_line get_next_line path_to_space process_file show_ref_hash
top Alphabetic List
shwmemdbg.pl 2009/10/10 19:08:05 7,984
# AIM: VERY SPECIFIC - read a _DEBUG memory dump file, and order the block in SIZE
# 10/10/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings;
sub process_file show_ref_hash
top Alphabetic List
shwplay.pl 2010/11/23 10:20:46 24,756
# AIM: *** SPECIAL *** read a FG 'playback' recording, and show details...
# 19/11/2010 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd; File::stat;
sub gen_header_line show_warnings pgm_exit prtw on_gound process_in_file show_chunks secs_2_hhmmss in_world_range in_the_real_world_range read_records give_help need_arg parse_args xml_sample
top Alphabetic List
shwsct.pl 2010/11/28 12:27:31 58,459
# 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
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw format_fg_nav_stg get_annon_hash load_gzip_file get_low_airway_sample get_high_airway_sample get_artcc_low_sample get_artcc_high_sample get_info_sample get_airport_sample split_nums decode_lat show_airport get_airport get_runway_sample get_runway get_vor_sample pad_nav_id not_valid_nav_ref set_nav_vars get_nav_stg set_nav_ll show_nav get_nav get_vor get_ndb_sample get_ndb get_fixes_sample show_fix get_fix get_awy_low_sample get_awy_high_sample show_awy get_awy get_artcc_sample get_artcc get_sid_sample get_stars_sample get_sid_star get_sid get_star get_geo_sample get_sg_dist_hdg get_sg_dist_dir show_geo get_geo process_in_file is_nav_valid get_fg_nav_item_stg get_fg_nav_list_stg load_fg_nav_file not_in_world_range is_near_my_point mycmp_decend_dist find_closest_fg_nav list_per_section list_all_vors give_help need_arg parse_args
top Alphabetic List
sitemap.pl 2005/06/08 05:21:32 5,352
use strict; XML::XPath; XML::XPath::XMLParser; XML::Parser; File::Find; Getopt::Long;
sub find_local_files translate_path
top Alphabetic List
sitemap02.pl 2009/10/16 19:08:48 8,044
use strict; warnings; File::Basename; Cwd; File::stat; File::Find; Getopt::Long;
sub get_date_time write_a_html_file get_title find_local_files translate_path is_fp_folder write_html_head write_html_tail
top Alphabetic List
sln2dsw.pl 2008/09/18 19:24:15 78,135
# 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)
use strict; warnings; File::Basename; constant {
sub add_proj_begin add_proj_depends add_proj_end in_list write_DSW_file write_DSW_file_OLD clear_proj_files compare_proj_with_dsp is_same_DOS_file process_DSW process_DSP get_xml_tag tag_typ_2_stg get_tag_typ get_app_type space_split array_2_hash_on_equals split_conf is_in_skip_conf_rel is_in_skip_conf_dbg is_in_skip_lib_rel is_in_skip_lib_dbg set_runtime_dbg set_runtime_rel get_group_type get_def_group_name get_def_group_filter get_xml_sources is_vcproj strip_quotes resolve_depends process_SLN is_c_source is_h_special is_h_source get_suffix is_rc_file parse_args generate_dsw is_in_array is_in_array_nc out_src generate_DSP fix_rel_path get_dsp_head_console get_dsp_head_app get_dsp_head_slib get_dsp_head_dynalib get_dsp_tail get_dsw_head get_dsw_tail get_runtime_stg prtw show_warnings
top Alphabetic List
sln2dsw02.pl 2011/07/13 15:36:26 18,765
# 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
use strict; warnings; File::Basename; File::Spec; Cwd;
sub prtw show_warnings pgm_exit fg_add_proj_begin fg_add_proj_depends fg_add_proj_end process_solution_hash show_solution show_solution_simple is_vcproj process_SLN_file set_local_debug_on give_help need_arg parse_args
top Alphabetic List
sln2std.pl 2010/10/10 19:35:20 19,955
# AIM: Convert a 'solution' to my 'standard' output
use strict; warnings; File::Basename; File::Spec; Cwd;
sub show_warnings pgm_exit prtw sub_last_dir process_in_sln show_vc_projects get_full_xml_line array_2_hash_on_equals3 process_vc_projects give_help need_arg parse_args
top Alphabetic List
slnlist.pl 2007/09/05 14:43:44 8,351
# 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
use strict; warnings; File::Basename;
sub process_vcproj_xml_lines unix_2_dos fix_rel process_sln is_my_file process_directory
top Alphabetic List
slurptest.pl 2005/11/30 14:11:50 1,645
use Carp; Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep );
sub read_file_f
top Alphabetic List
solve-ok.pl 2011/07/21 11:40:36 52,644
# AIM: Given a position, decide the track to take to best arrive at a 'circuit'
# Quite specialized!
use strict; warnings; File::Basename; Cwd; IO::Socket; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); Math::Trig;
sub get_locations show_warnings pgm_exit prtw in_world_range scalar_dot_product scalar_dot_product2 norm_vector_length norm_vector_length2 process_in_file set_int_stg set_dist_stg set_hdg_stg set_lat_stg set_lon_stg set_decimal1_stg get_dist_stg_nm show_distance_heading show_rw_patt set_runway_ends_and_patt init_runway_array get_runways_and_pattern set_circuit_values set_most_values_plus set_min_max add_img_line paint_user_points set_most_values_plus2 get_circuit_hash normalised_hdg get_mid_tl2bl get_mid_bl2br get_mid_bl2br2 set_distances_bearings dist_less_or_equal5 process_lat_lon process_lat_lon2 give_help need_arg parse_args
top Alphabetic List
solve.pl 2011/07/23 12:26:38 60,805
# AIM: Given a position, decide the track to take to best arrive at a 'circuit'
# Quite specialized!
use strict; warnings; File::Basename; Cwd; IO::Socket; Term::ReadKey; Time::HiRes qw( usleep gettimeofday tv_interval ); Math::Trig;
sub get_locations show_warnings pgm_exit prtw in_world_range Triangle_Area Point_Inside_Triange scalar_dot_product scalar_dot_product2 norm_vector_length norm_vector_length2 process_in_file set_int_stg set_int_dist_stg5 set_hdg_stg set_lat_stg set_lon_stg set_decimal1_stg get_dist_stg_nm normalised_hdg set_hdg_stg3 show_distance_heading show_rw_patt set_runway_ends_and_patt init_runway_array get_runways_and_pattern set_circuit_values set_most_values_plus set_min_max add_img_arrow add_img_circle add_arrow_to_center add_img_line draw_text_at_pos draw_text_at_latlon paint_user_points get_circuit_hash get_mid_tl2bl get_mid_bl2br get_mid_bl2br2 set_distances_bearings dist_less_or_equal5 point_in_circuit process_lat_lon is_in_circuit give_help need_arg parse_args
top Alphabetic List
sortcss.pl 2010/07/11 13:33:25 12,174
# AIM: Read a file of CSS, in this case taken from my site,
# and 'sort' it - that is put each element together
# 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 '}' ...
use strict; warnings;
sub trim_array_items compare_done_tags set_line_col nice_tag_text parse_args
top Alphabetic List
sortres.pl 2008/02/15 19:15:51 4,522
# AIM: Sort a RESOURCE header file
use strict; warnings;
sub spl_sort get_offset
top Alphabetic List
space2tab.pl 2007/11/01 13:23:21 1,972
# AIM: Convert LEADING spaces to tab
use strict; warnings;
sub do_file
top Alphabetic List
split_words.pl 2007/02/09 16:11:12 1,325
# 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
use strict; warnings;
sub split_words
top Alphabetic List
srtm-list.pl 2011/12/21 16:46:24 20,233
# AIM: Given a lat, lon, get the STRM3 list
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw in_world_range process_latlon process_in_file show_bounding_box give_help need_arg parse_args
top Alphabetic List
srtm_data.pl 2011/05/24 15:18:02 135,339
top Alphabetic List
stat01.pl 2006/07/11 13:28:30 4,499
# 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 -
use File::stat; Fcntl ':mode';
sub mth_to_num stat_mode_stg
top Alphabetic List
stat02.pl 2009/10/13 15:13:56 5,596
# 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 -
use File::stat; Fcntl ':mode';
sub mth_to_num stat_mode_stg
top Alphabetic List
stdintest.pl 2005/11/30 12:55:38 153
use IO::Handle;
top Alphabetic List
stripcols.pl 2010/06/29 17:32:09 20,961
# 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/
use strict; warnings; Cwd; File::Basename; Time::gmtime;
sub prtw show_warnings pgm_exit prt_help get_YYYYMMDD chomp_rule_line chomp_rule_line_end chomp_rule_line_bgn process_file get_begin_table begin_html is_my_file_type get_file_type_txt write_output parameter_verification need_arg parse_args
top Alphabetic List
striphtml.pl 2005/06/21 16:28:12 6,098
use HTML::Parser (); Data::Dump ();
sub hand prt
top Alphabetic List
striphtml02.pl 2005/11/30 16:34:08 9,517
# 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
use HTML::Parser (); Data::Dump (); Carp; Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep ); IO::File; Fcntl;
sub hand prt read_file_f write_file_f
top Alphabetic List
striphtml03.pl 2005/11/30 18:39:10 3,512
# AIM: To strip HTML from a file using HTML::Strip
###use strict;
use Carp; HTML::Strip; Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep );
sub read_file_f
top Alphabetic List
stripleft.pl 2009/05/21 13:58:26 1,704
# 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
top Alphabetic List
stripleft02.pl 2011/09/08 13:09:20 5,451
# AIM: Replace stripleft.pl
# 08/09/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
stripms.pl 2005/05/01 05:09:28 7,089
use strict; FILE::stat; CGI; CGI qw(:standard); HTML::Parser (); HTML::TokeParser;
sub dotoken my_start2 my_start my_end my_text my_comm parse_arguments
top Alphabetic List
stripms2.pl 2005/05/01 08:06:40 1,591
use HTML::Parser ();
sub my_start2 my_start my_end my_text my_comm
top Alphabetic List
stripms3.pl 2005/05/04 04:53:48 8,769
use HTML::Parser (); Data::Dump ();
sub hand parse_args prt
top Alphabetic List
stripms4.pl 2005/05/11 10:35:00 16,135
use HTML::Parser (); Data::Dump ();
sub hand parse_args prt prt2 prtd getback dirname getfn
top Alphabetic List
stripms5.pl 2005/11/23 17:33:46 16,682
use HTML::Parser (); Data::Dump ();
sub hand parse_args prt prt2 prtd getback dirname getfn
top Alphabetic List
stripms6.pl 2005/11/23 18:35:24 15,833
use HTML::Parser (); Data::Dump ();
sub hand parse_args prt prt2 prtd getback dirname getfn
top Alphabetic List
stripspan.pl 2006/07/28 19:12:08 2,566
# AIM: Strip <span ...>something </span> from HTML
top Alphabetic List
sublist.pl 2010/06/27 14:28:45 30,107
# 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 ===
use strict; warnings; File::Basename; Cwd;
sub set_debug pgm_exit prtw show_warnings YYYYMMDD2 get_space_indent line_is_heredoc process_file show_has_ref get_sub_hr cmp_2_rh process_input_list show_ref_h give_help need_arg parse_args
top Alphabetic List
sublist02.pl 2010/06/27 14:45:16 23,537
# 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
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings YYYYMMDD2 get_space_indent line_is_heredoc process_file show_has_ref give_help need_arg parse_args
top Alphabetic List
subref.pl 2008/02/13 16:31:23 800
# AIM: To call a function, or set a global, by calling a function ...
use strict; warnings;
sub set_value1 set_value2 type1 type2 prt
top Alphabetic List
substr01.pl 2006/07/11 15:17:46 1,244
sub max_sub
top Alphabetic List
sum.pl 2011/08/15 19:13:33 4,855
# AIM: Sum of a set of values...
# 15/08/2011 geoff mclane http://geoffair.net/mperl
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file get_sum give_help need_arg parse_args
top Alphabetic List
svnexclude.pl 2007/10/22 13:39:45 2,130
# AIM: Very specific utility to REMOVE diffs of files in '.svn' folders ...
# 22/10/2007 - geoff mclane - geoffair.net/mperl
use strict; warnings;
top Alphabetic List
svnvers.pl 2007/11/26 13:31:26 1,468
# AIM: Check a directory, and output the current SVN version number ...
# 26/11/2007 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub check_svn_vers prt
top Alphabetic List
t2html.pl 2005/06/14 08:59:24 2,904
use strict;
sub prt add_html_head add_html_tail tolog htmlise
top Alphabetic List
table2hash.pl 2008/01/29 17:36:40 3,373
# AIM: Read in a HTML table, and convert to a Perl HASH structure ...
# 29/01/2008 - geoff mclane
use strict; warnings;
sub process_chars
top Alphabetic List
table2str.pl 2009/10/01 15:53:17 5,104
# 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
use strict; warnings;
sub process_file show_code_ref_simple show_code_ref
top Alphabetic List
tafacronyms.pl 2008/01/31 19:23:20 7,361
# AIM: List of TAF acronyms
use strict; warnings;
sub get_acro_desc is_in_taf_exceptions is_in_taf_spl_exceptions
top Alphabetic List
tanlist.pl 2007/02/11 18:13:09 525
# AIM: List TANGENT of 0 to 360 degrees ...
use strict; warnings; Math::Trig;
top Alphabetic List
telnet2fg.pl 2011/01/02 18:23:23 10,635
# AIM: Attempt a telent (socket) connection to FG, and report the
# aircraft position, if running...
use strict; warnings; File::Basename; IO::Socket; Cwd; Time::HiRes qw( usleep gettimeofday tv_interval );
sub show_warnings pgm_exit prtw process_in_file get_playback_nodes get_KAP140_nodes fgfs_connect fgfs_send fgfs_get fgfs_close fgfs_get_coord read_playback_nodes read_autopilot_nodes attempt_connection give_help need_arg parse_args
top Alphabetic List
temp1.pl 2011/11/07 20:40:57 5,460
use Time::Local;
sub prt datetime_to_seconds get_YYYYMMDD_UNUSED get_YYYYMMDD_hhmmss is_zip_text_file
top Alphabetic List
test-bucket.pl 2009/03/25 17:04:34 3,865
use strict; warnings; Bucket;
sub prt show_bucket
top Alphabetic List
test-bucket2.pl 2009/11/18 12:12:10 893
# AIM: Final debug on Bucket2.pm
# 18/11/2009 geoff mclane http://geoffair.net/mperl
use strict; warnings; Bucket2;
sub show_bucket
top Alphabetic List
test-eval.pl 2010/07/07 12:56:40 1,915
# 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/
use strict; warnings;
sub prt test1 test2
top Alphabetic List
test-eval02.pl 2010/07/07 13:46:43 1,074
use strict; warnings;
sub set_debug_item svc_set_dbg_item
top Alphabetic List
test-file-spec.pl 2010/01/16 19:34:22 2,476
# AIM: Some simple tests of File::Spec
use strict; warnings; File::Basename; Cwd; File::Spec;
sub pgm_exit prtw show_warnings test_dir_rel_2_abs test_rel_abs
top Alphabetic List
test-hash-ref.pl 2010/04/08 14:09:02 1,292
use strict; warnings;
sub prt build_hash show_hash_ref
top Alphabetic List
test-time.pl 2011/04/19 12:27:14 3,234
use strict; warnings; IO::Socket; Time::HiRes qw( usleep gettimeofday tv_interval );
sub prt get_time_stg do_usleep_for test_usleep
top Alphabetic List
test-url-uri.pl 2010/07/24 15:24:48 3,060
use strict; warnings; File::Basename;
sub url_parse uri_parse uri_parse2
top Alphabetic List
test.pl 2006/10/26 10:14:20 2,022
# AIM: Test a 'wrapping' function, 'max_sub' ...
sub do_one max_sub
top Alphabetic List
test1.pl 2010/09/20 09:21:12 12,814
# AIM:
use strict; warnings; File::Basename; Cwd; File::stat; Digest::MD5; File::Spec; File::DosGlob 'glob';
sub get_user_rt get_user_libs get_user_incs get_user_defs get_user_output get_user_inter add_defined_item add_include_item show_warnings pgm_exit prtw show_file get_perl_temp_dir do_sanity_check module_intialisation test1
top Alphabetic List
test10.pl 2005/05/08 13:09:28 5,099
use strict; warnings; CGI;
sub hashCode showarrcnts
top Alphabetic List
test11.pl 2006/12/15 19:24:08 1,515
sub show_cond
top Alphabetic List
test12.pl 2006/04/12 14:29:14 3,319
sub pos_of_last_slash file_extension file_title
top Alphabetic List
test13.pl 2006/07/15 14:31:52 633
top Alphabetic List
test14.pl 2006/04/16 14:53:56 1,611
sub amend_vcproj prt
top Alphabetic List
test2.pl 2010/09/20 13:12:45 10,215
# AIM: Just a test scripts
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings dispSymbols displaylibSymbols show_ac_hash get_dbg_var set_dbg_var get_dbg_range test1 process_ac_file test2 give_help need_arg parse_args
top Alphabetic List
test3.pl 2010/08/02 15:25:30 330
use strict; warnings;
sub prt
top Alphabetic List
test4.pl 2006/10/26 12:00:10 4,362
# 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
use File::stat;
sub get_zip_txt dos_2_unix subactdir YYYYMMDD
top Alphabetic List
test5.pl 2006/09/11 16:35:14 9,464
# 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;
use Switch;
sub build_arr4 build_arr4_2 show_using_indexing show_with_extraction show_and_change set_changes shw show_showcase showcase build_arrays build_arrays2
top Alphabetic List
test6.pl 2006/09/18 13:25:32 1,837
#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???
use strict; warnings;
sub add_2_array is_built_in add_2_old
top Alphabetic List
test7.pl 2006/09/18 14:32:08 13,824
use strict; warnings;
sub is_built_in transfer_old_table3 mark_old_index get_table_array process_tbl_arr process_tbl_arr3 get_old_index tag2newline collectoi_hrefs trim_line load_html_stx load_php_stx do_stx_load
top Alphabetic List
test8.pl 2007/06/08 14:53:37 4,083
# AIM: download and write a file ...
# carefully checking the LINE ENDINGS contained in the file
use strict; warnings; LWP::Simple;
sub show_line_ending check_line_ending force_dos_le force_unix_le
top Alphabetic List
test9.pl 2006/10/27 17:43:08 5,008
use strict;
sub collecthrefs strip_quotes trim_tail del_td_style trimall show_pack_simple prt show_pack
top Alphabetic List
test_req1.pl 2010/09/04 09:14:44 993
use strict; warnings;
sub dispSymbols displayAllSymbols
top Alphabetic List
test_req2.pl 2010/09/04 09:05:04 150
use strict;
top Alphabetic List
test_x.pl 2010/04/14 14:37:25 183
top Alphabetic List
testbits.pl 2009/09/01 10:04:16 508
use strict; warnings;
top Alphabetic List
testcolor.pl 2007/03/28 13:03:58 9,916
# AIM:
use strict; warnings;
sub html_begin html_end URLDecode URLEncode URLEncodeORG
top Alphabetic List
testdsphdrs.pl 2009/08/19 11:14:04 2,581
# AIM: To test how to implement new headers, and options
# 8/19/2009 - geoff mclane - http://geoffair.net/mperl/
use strict; warnings; File::Basename;
sub get_common_header get_common_body get_orig_header get_new_header
top Alphabetic List
testfish.pl 2009/03/11 14:17:28 13,629
use lib "C:\\GTools\\perl"; strict; Cwd; File::stat; Fish;
sub writeHTML writeGraph do_user_dir do_sub_dir parse_arguments dirname retfulldir subactdir addbold addcolm addcolmr html_head html_head2 html_tail b2ks1 get_nn
top Alphabetic List
testiso.pl 2006/08/28 11:30:14 2,620
top Alphabetic List
testiso2.pl 2006/08/28 13:09:58 1,008
sub ISO2Currency Currency2ISO
top Alphabetic List
testpage.pl 2007/09/07 11:36:41 3,177
# AIM:
use strict; warnings;
sub dec2hex
top Alphabetic List
tests2d.pl 2009/10/29 16:00:36 11,209
# AIM: Just a test module
use strict; warnings; Cwd; File::Basename;
sub prtw show_warnings pgm_exit get_stgs_4_short_hr get_lines_hash compare_lines show_diff_lines test4 add_3rd_config get_sub_ref test3 test6 test5 test_is_resource_file test7 test8
top Alphabetic List
testsock.pl 2005/03/25 02:24:32 2,129
use IO::Socket; IO::Select;
top Alphabetic List
testsock1.pl 2005/03/13 07:06:36 1,543
use IO::Socket; strict; Socket;
top Alphabetic List
thread1.pl 2005/07/20 07:44:20 1,176
use threads; Thread::Queue;
sub check_num
top Alphabetic List
thread2.pl 2007/01/27 12:37:09 939
use threads (); threads::shared ();
sub get_nn
top Alphabetic List
Tidy01.pl 2008/08/05 13:52:58 2,076
# AIM: To test a little, the HTML::Tidy interface ...
use strict; warnings; HTML::Tidy;
top Alphabetic List
Tidy02.pl 2011/01/15 20:16:49 29,267
# AIM: SPECIFIC TO HTML TIDY ONLY - HTML5 SUPPORT RESEARCH
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw trim_tag set_min_tag set_min_val sanity_check show_ref_hash process_attr_table process_enums_tag_at process_tag_table process_attr_dict process_defines_file get_anon_hash process_files give_help need_arg parse_args global_attributes
top Alphabetic List
tidycmp.pl 2006/09/24 15:43:34 6,144
# 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
use strict; warnings; LWP::Simple;
sub test_in_lines test_in_lines_ok trimall
top Alphabetic List
tidycmp02.pl 2007/06/08 17:48:11 10,856
# 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!!!
use strict; warnings; LWP::Simple;
sub find_desc test_in_lines trimall force_unix_le
top Alphabetic List
tidytxt.pl 2007/09/03 16:20:31 2,388
# AIM: To use Tidy to check some text
# try to get stdin working ...
# 03/09/2007 geoff mclane - http://geoffair.net/mperl
#use strict;
use warnings;
sub get_tidy_text get_tidy_text2 get_zip_txt get_zip_txt2
top Alphabetic List
tidyword.pl 2007/05/06 16:42:29 5,879
# 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
use strict; warnings;
sub lineinparas getcontent getpara
top Alphabetic List
timing.pl 2008/12/18 14:43:57 728
# AIM: Test high resolution timing
# 17/12/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; Time::HiRes qw(gettimeofday tv_interval);
sub bump_cnt run_test
top Alphabetic List
touch.pl 2007/03/03 17:32:13 5,125
# 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.
use strict; Win32::API::Prototype; File::stat;
sub getTimes
top Alphabetic List
trimdf01.pl 2010/05/14 18:09:38 3,581
# 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/
use strict; warnings; Cwd; File::Basename;
sub pgm_exit trim_leading process_file parse_args
top Alphabetic List
txfdump.pl 2009/07/06 11:29:40 3,802
use strict;
sub getsbyte getbyte getshort getint
top Alphabetic List
txt2htm.pl 2006/09/16 19:37:42 6,790
use strict; Cwd;
sub parse_arguments init_out_file end_out_file do_this_file dsp_add_src dirname
top Alphabetic List
txt2htm02.pl 2011/08/06 16:00:38 13,432
use strict; warnings; Cwd; File::Basename; File::Spec;
sub show_warnings pgm_exit prtw init_out_file end_out_file local_dirname do_this_file convert_links line_to_html contains_a_link dsp_add_src parse_arguments
top Alphabetic List
typefile.pl 2011/06/05 12:33:58 5,458
# AIM: Given an input file, output without comments /* .... */ or
# lines beginning /\s*\/\/
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
typeglob-assignment.pl 2010/09/03 15:38:50 328
sub foo
top Alphabetic List
typeglob-name-package.pl 2010/09/03 15:28:34 311
sub who_am_i
top Alphabetic List
unicode.pl 2008/09/02 19:19:00 7,436
# 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
use strict; warnings;
sub prt_top dec2hex
top Alphabetic List
unixit.pl 2007/12/20 16:51:23 2,372
# AIM: Given an input file, convert to unix/linux form ...
use strict; warnings;
sub prt give_help need_arg parse_args
top Alphabetic List
unlink.pl 2007/03/04 16:03:59 1,140
# AIM: To do a simple test on built in function, unlink ...
# Note no -w above, else get additional warnings ...
use strict; warnings; File::stat;
sub check_file
top Alphabetic List
utf_16_BOM.pl 2010/01/27 19:28:05 1,610
sub has_utf_16_BOM
top Alphabetic List
utils.pl 2010/09/22 12:06:05 1,393
# AIM: Various utility subs
# 22/09/2010 - now see lib_utils.pl for these...
sub trim_tail unix_2_dos fix_rel sub_common_folder
top Alphabetic List
vartypes.pl 2010/09/03 15:18:07 433
sub add
top Alphabetic List
vc6srcs01.pl 2007/11/27 15:11:06 21,843
# 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
use strict; warnings; File::Basename;
sub show_other_sources show_sources2proj check_build_exclude show_dsp_sources scan_dsp_file get_dsw_projects strip_quotes expand_mac do_if_split flip_state clear_per_dsp load_dsp get_top_files mark_all_files find_in_all_files show_dsw_missed show_dsp_missed is_c_source is_h_special is_h_source is_dsw_file is_sln_file is_ch_source is_my_type show_all_sources sub_common_folder sub_root
top Alphabetic List
vc8cmp-01.pl 2006/06/11 16:24:38 11,345
use strict; Cwd; Win32::OLE qw(in with);
sub compare_files check_match get_vcproj_files check_input is_solution is_vcproj give_help parse_arguments pos_of_last_slash file_extension file_title file_name file_dirname dirname wlog prt mydie
top Alphabetic List
vc8cmp-02.pl 2006/07/27 10:55:12 12,506
use strict; Cwd; Win32::OLE qw(in with);
sub compare_files check_match get_vcproj_files check_input is_solution is_vcproj give_help parse_arguments pos_of_last_slash file_extension file_title file_name file_dirname dirname prtd
top Alphabetic List
vc8config.pl 2007/09/05 17:10:34 3,655
# AIM: To read a config.h.in file, and write a config.h, using
# the include PATH of MSVC8
use strict; warnings;
sub load_includes load_cfg_in dos_2_unix in_vc8include find_headers
top Alphabetic List
vc8srcs01.pl 2006/07/25 12:23:24 4,376
# AIM: Source list from MSVC8 project file
# First try, using XML::Simple, so
use Data::Dumper; XML::Simple;
sub cmp_c_sources get_dir_sources get_xml_sources is_c_source is_h_source
top Alphabetic List
vc8srcs02.pl 2006/11/28 12:35:24 16,545
# 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
use XML::Simple; Data::Dumper;
sub in_dir_array get_xml_projects get_dir_sources get_xml_sources cmp_c_sources cmp_am_sources is_c_source is_h_source is_vcproj is_solution
top Alphabetic List
vc8srcs03.pl 2010/04/15 13:16:38 42,145
# 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
use strict; warnings; File::Basename; Cwd;
sub show_warnings pgm_exit prtw os_is_win sub_root_directory repeat_missed_items show_dsw_compare in_dsw_srcs in_dsw_hdrs in_sln_srcs show_vc8_sources show_dsp_sources get_dsw_projects process_sources in_dir_array get_xml_projects get_dir_sources mark_all_files show_all_sources get_top_files trimall get_xml_sources cmp_c_sources cmp_am_sources is_c_source is_h_special is_h_source is_dsw_file is_sln_file is_ch_source is_my_type is_vcproj is_solution unix_2_dos fix_rel trim_tail strip_quotes expand_mac do_if_split known_ext load_dsp get_comm_dir need_args give_help parse_args
top Alphabetic List
vc_cmp.pl 2010/05/07 16:18:48 14,754
# AIM: Compare 2 vcproj files
use strict; warnings; File::Basename; Cwd;
sub pgm_exit prtw show_warnings compare_source_arrays compare_config_arrays compare_hash_results compare_files give_help need_arg parse_args
top Alphabetic List
vc_sln.pl 2010/05/17 14:23:28 13,794
# AIM: Scan a SLN file, and report contents
use strict; warnings; File::Basename; Cwd;
sub set_dbg_flags set_dbg_on set_dbg_off pgm_exit prtw show_warnings is_vcproj_ext process_SLN_file3 process_sln_file give_help need_arg parse_args
top Alphabetic List
vcdelcfg.pl 2010/05/28 18:41:22 23,849
# 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
use strict; warnings; File::Basename; Cwd;
sub get_xml_hash pgm_exit prtw show_warnings show_xml_hash get_xml_line_from_hash in_delete_list debug_xml_lines get_bat_text process_file give_help need_arg parse_args
top Alphabetic List
vcfix.pl 2010/05/30 19:25:59 75,041
# 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
use strict; warnings; File::Basename; Cwd;
sub get_xml_hash show_warnings pgm_exit prtw show_xml_hash show_xml_hash_diff get_xml_line_from_hash is_my_config is_my_config2 debug_xml_lines get_bat_text tag_has_attributes process_file give_help need_arg parse_args
top Alphabetic List
vcproj01.pl 2006/04/19 16:51:08 13,600
sub prt_list trim_line find_item3 find_headers find_sources find_hash3 find_config get_lines clear_arrays process_lines show_arrays amend_vcproj prt
top Alphabetic List
vcproj02.pl 2006/07/25 14:27:24 21,606
# AIM: To load FG vcproj files, and extract the SOURCE files in there ...
sub prt mydie prt_list trim_line find_item3 find_headers find_sources find_hash3 find_config get_lines clear_arrays process_lines copy_main_items copy_lib_items show_arrays show_main_arrays show_lib_arrays show_sh_lines amend_vcproj slurp_files read_vcproj read_vcproj_OK
top Alphabetic List
vcproj03.pl 2008/12/05 12:19:51 24,892
# AIM: Parse a VCPROJ file - get_xml_source() is the service in sln2dsw.pl
use strict; warnings; File::Basename;
sub get_xml_tag tag_typ_2_stg get_tag_typ get_app_type space_split array_2_hash_on_equals split_conf is_in_skip_conf_rel is_in_skip_conf_dbg is_in_skip_lib_rel is_in_skip_lib_dbg set_runtime_dbg set_runtime_rel get_xml_sources strip_quotes prtw show_warnings get_runtime_stg fix_rel_path is_c_source is_h_special is_h_source is_in_array is_in_array_nc set_all_debugs
top Alphabetic List
vcproj04.pl 2009/09/24 09:50:38 20,766
# 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
use strict; warnings; Cwd; File::Basename;
sub is_c_source_ext is_sln_ext is_vcproj_ext process_vcproj_file process_SLN_file2 remove_base_path return_common_dir get_common_dir sln_file_processing prtw show_warnings give_help chk_arg need_arg parse_args
top Alphabetic List
vcproj05.pl 2011/11/04 14:50:48 85,128
# 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.
# 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
use strict; warnings; Cwd; File::Basename; File::Spec;
sub VERB1 VERB2 VERB5 VERB9 get_sl_debug_stg set_sl_debug_val set_sl_debug_on set_sl_debug_off give_help prtw show_warnings pgm_exit is_c_source_ext is_sln_ext is_vcproj_ext get_new_inc_hash get_new_post_string get_new_libs_string Get_Default_Group chk_relative_paths fix_lib_list process_vcproj_file fix_rel_path2 process_SLN_file2 remove_base_path return_common_dir get_common_dir mysort2 mysort0 sort_ref_results_by_type sort_ref_results_by_name show_sln_results sln_file_processing chk_arg need_arg load_arg_file has_wild_cards parse_args
top Alphabetic List
vcprojlist.pl 2008/03/07 15:15:45 7,593
# 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
use strict; warnings; File::Basename;
sub process_xml_lines strip_quotes space_split array_2_hash_on_equals is_cpp_src unix_2_dos get_rel_path fix_rel_path
top Alphabetic List
viewperl.pl 2005/05/12 11:34:34 11,167
use strict; FileHandle; Getopt::Long; Syntax::Highlight::Perl 1.0; vars qw(%OPTIONS $PAGER %ANSI_colors $formatter @FILES);
sub show_help process_files mod2file
top Alphabetic List
viewperl2.pl 2006/06/19 11:47:02 17,063
use strict; FileHandle; Getopt::Long; Syntax::Highlight::Perl 1.0; vars qw(%OPTIONS $PAGER %ANSI_colors %ANSI_colors_ORG $formatter @FILES);
sub show_help process_files mod2file addTTitem_bkgrd add_html_style add_html_table prt
top Alphabetic List
viewperl3.pl 2006/06/19 13:44:48 17,186
use strict; FileHandle; Getopt::Long; Syntax::Highlight::Perl 1.0; vars qw(%OPTIONS $PAGER %ANSI_colors %ANSI_colors_ORG $formatter @FILES);
sub show_help process_files mod2file addTTitem_bkgrd add_html_style add_html_table prt
top Alphabetic List
wakeup-call.pl 2009/10/07 10:44:08 3,216
use warnings; strict; Asterisk::AGI; Time::Local; IO::File; File::Temp qw/ tempfile /;
sub callback
top Alphabetic List
wordindex01.pl 2007/08/22 15:08:33 5,163
# 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
use strict; warnings; Win32::OLE; Win32::OLE qw(in with); Win32::OLE::Variant; Win32::OLE::Const 'Microsoft Word';
sub in_common Quit enumerate_doc prtv9 remove_quotes replace_hibits
top Alphabetic List
wsg842mercator.pl 2011/11/04 12:28:24 8,141
# 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
use strict; warnings; File::Basename; Cwd; Math::Trig;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw convert_lon_lat convert_mx_my process_in_file in_world_range show_extents give_help need_arg parse_args
top Alphabetic List
xml01.pl 2005/06/07 09:57:18 1,694
use XML::Simple;
sub addbold incolm
top Alphabetic List
xml02.pl 2005/06/17 04:09:34 2,173
use Data::Dumper; XML::Simple;
sub addpre addbold incolm addrow prt
top Alphabetic List
xml03.pl 2006/04/16 19:43:34 4,116
use Data::Dumper; XML::Simple;
sub prt show_type
top Alphabetic List
xml04.pl 2006/04/17 11:11:44 2,244
use Data::Dumper; XML::Simple;
sub show_type prt
top Alphabetic List
xml05.pl 2006/04/17 11:49:14 2,718
use Data::Dumper; XML::Simple;
sub get_ind show_type prt
top Alphabetic List
xml06.pl 2006/07/25 14:27:16 23,584
use XML::Simple; Data::Dumper;
top Alphabetic List
xml07.pl 2007/11/28 15:13:58 34,464
use XML::Simple; Data::Dumper;
top Alphabetic List
xml08.pl 2011/12/22 16:22:39 10,359
# 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
use strict; warnings; XML::Simple; Data::Dumper;
sub get_type_number get_type_text is_text_type show_hash_type show_array_type show_xml_keys test_path test_path2
top Alphabetic List
xml2h01.pl 2007/11/10 14:18:51 5,803
# AIM: Color code XML file data
# 10/11/2007 - geoff mclane - http://geoffair.net/mperl
use strict; warnings;
sub add_red add_value add_blue add_tag process_file conv_spaces html_line
top Alphabetic List
xml_test.pl 2005/06/07 18:02:40 356
use Test::Harness qw(&runtests $verbose); strict;
sub usage
top Alphabetic List
xmldom01.pl 2008/07/06 19:15:29 5,535
use XML::DOM;
sub is_element_node getTextContents findNode getValue setValue traverse_node appendText appendNode
top Alphabetic List
xmldom02.pl 2011/11/01 17:48:50 4,322
# AIM: Like xmldom01.pl, some more experiments with XML::DOM ...
use strict; warnings; XML::DOM;
sub traverse_node appendText setTextValue
top Alphabetic List
xmlfgair.pl 2010/01/13 18:16:34 7,873
# AIM: Read FG AirCraft -set.xml file, and show details...
use strict; warnings; XML::Simple; File::Basename;
sub process_dir pgm_exit is_in_excluded show_fg_xml_data process_file process_files process_dirs show_ref_hash parse_args
top Alphabetic List
xmlfgkey.pl 2005/10/23 11:43:10 523
use XML::Simple;
top Alphabetic List
xmlfgkey2.pl 2005/10/23 12:00:32 495
use XML::Parser; XML::SimpleObject;
top Alphabetic List
xmlfgkey3.pl 2007/11/28 16:00:21 683
use XML::Twig;
top Alphabetic List
xmlfix01.pl 2007/08/25 02:16:58 3,327
# AIM: Read an XML file, and add a title from the split of the file name
use strict; warnings; XML::Simple; Data::Dumper;
sub split_file_name makeNewHash
top Alphabetic List
xmlfix02.pl 2007/08/25 12:46:54 1,790
# 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;
use warnings; XML::Simple; Data::Dumper;
top Alphabetic List
xmlgparse.pl 2010/01/25 18:28:51 28,903
# AIM: My attempt at my OWN XML parser
use strict; warnings;
sub is_cdata ret_stack_text get_ref_tag get_att_ref get_save_ref parse_xml_text parse_xml_file fix_xml_path show_rh_kv show_ref_hash get_all_children xml_get_content_text xml_get_element_text xml_get_element_hash_for_array
top Alphabetic List
xmllibxml01.pl 2006/07/25 14:59:44 915
use strict; XML::LibXML; Data::Dumper;
top Alphabetic List
xmlreline.pl 2011/12/20 19:37:21 10,090
# AIM: Simple read and re-line an XML file input, write to output, if one given
# 20/12/2011 - Review only - no major changes
use strict; warnings; File::Basename; Cwd;
sub VERB1 VERB2 VERB5 VERB9 show_warnings pgm_exit prtw process_in_file give_help need_arg parse_args
top Alphabetic List
xmlsax01.pl 2006/07/25 16:56:28 1,262
use XML::Parser::PerlSAX; strict;
sub new start_element end_element characters
top Alphabetic List
xmlsaxmail01.pl 2006/07/25 16:54:58 1,924
use strict; XML::Parser::PerlSAX; Mail::Sendmail;
sub new not_used getTextContents findNode getValue
top Alphabetic List
xmlsimple.pl 2010/01/13 14:59:36 20,443
# 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'
use strict; warnings; XML::Simple; Data::Dumper;
sub show_hash_data show_array_values show_hash_keys pgm_exit show_fg_xml_data show_fg_xml_data_fa load_xml_file is_scalar_type get_type_name test_files test_configuration
top Alphabetic List
xmltwig01.pl 2006/07/25 15:02:46 385
use XML::Twig;
top Alphabetic List
xmltwig02.pl 2007/11/29 20:08:26 12,604
# 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
use strict; warnings; XML::Twig; Data::Dumper;
sub get_xml_runtime get_xml_include_dirs get_xml_pre_definitions get_xml_sources get_xml_groups get_xml_filter
top Alphabetic List
xmlwin32.pl 2007/11/28 15:49:09 9,009
# 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
use strict; warnings; Win32::OLE qw(in with);
sub get_node_text show_type
top Alphabetic List
xmlwrap02.pl 2008/07/28 12:48:53 1,927
# AIM: Exploring XML::Parser::Wrapper, loading from file ...
# 28/07/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; XML::Parser::Wrapper;
sub process_element
top Alphabetic List
xmlwrap03.pl 2008/07/28 12:50:44 2,498
# AIM: Exploring XML::Parser::Wrapper, loading from file ...
# specifically parsing a MSVC8 VCPROJ file
# 28/07/2008 geoff mclane http://geoffair.net/mperl
use strict; warnings; XML::Parser::Wrapper;
sub process_element
top Alphabetic List
xmlwrapper.pl 2009/10/16 16:29:36 9,265
# 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/
use strict; warnings; XML::Parser::Wrapper; Data::Dumper;
sub load_in_file enumerate_elements is_scalar_type get_type_name enumerate_vcproj xml_add_lines modify_xml
top Alphabetic List
zipindex.pl 2005/11/30 01:00:32 3,186
# AIM: To read the INPUT directory, and generate a HTML file
# to allow down load of all the ZIPS files found there ...
sub add_htm_head add_htm_tail process_dir
top Alphabetic List
zipindex02.pl 2007/01/27 12:38:04 8,553
# 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
use strict; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat;
sub add_htm_head add_htm_tail process_dir YYYYMMDD dos_2_unix subactdir mycmp_ascend mycmp_decend get_nn
top Alphabetic List
zipindex03.pl 2008/05/27 15:32:32 42,369
# 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
use strict; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat; File::Basename;
sub get_mo_from_dir_objs find_refs get_href_ref_string post_processing write_html get_index_text add_index_link add_htm_head get_nbsp_text add_htm_tail add_htm_table2 process_ref_dir process_dir YYYYMMDD dos_2_unix subactdir subhtmdir mycmp_ascend mycmp_decend get_nn get_zip_txt next_js_file in_added add_js_script my_file_title show_descriptions get_description in_excluded in_desclist get_desc_txt get_zip_list get_zip_file_list get_relative_path next_filename_num check_filename my_file_name
top Alphabetic List
zipindex04.pl 2011/11/07 21:08:04 28,380
# 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
use strict; warnings; File::Basename; Cwd; Digest::MD5 qw(md5 md5_hex md5_base64); File::stat; Time::Local;
sub VERB1 VERB2 VERB5 VERB9 process_dir prtw show_warnings pgm_exit u2d d2u sub_common_folder_dos sub_in_folder add_2_files_found seek_image_path check_in_directory is_zip_ext is_html_ext is_txt_ext is_zip_file is_html_file YYYYMMDD get_nn mycmp_decend_n8 mycmp_decend_n7 get_html_table_stg is_in_excluded datetime_to_seconds is_zip_text_file process_files_found get_head_html get_tail_html get_table_begin get_top_text get_valid_text mycmp_decend_n0 get_alphabetic_table write_html give_help need_arg parse_args
top Alphabetic List

Alpha-List: abs_path.pl acscan.pl acscan02.pl acscan03.pl addheader.pl addrbook.pl addsrcs.pl adjjs.pl adjrt01.pl adjrt02.pl adjxml.pl afm2txf.pl alarm.pl am2dsp.pl am2dsp1.pl am2dsp2.pl am2dsp3.pl am2dsp4.pl am2dsp5.pl am2dsp6.pl am2dsp7.pl am2dsp8.pl am2dspcurr.pl am2list01.pl am2list02.pl amfile01.pl amitems.pl amscan.pl amscan02.pl amsrcs01.pl amsrcs02.pl amsrcs03.pl amsrcs04-new.pl amsrcs04.pl analwarn.pl ansi-console.pl ansicolor.pl ansicolor2.pl aperltemplate.pl apsetup.pl array01.pl arrayref01.pl arrays01.pl ascii.pl atlas-trk.pl 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 autoexch04.pl autogif.pl 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 avsize.pl basename.pl basename02.pl bdlogger.pl beep.pl bin2hex02.pl bits.pl bldctbl.pl bldtable.pl bldtable02.pl bldziptbl.pl bldziptbl02.pl booksxml.pl btgvers.pl bucket.pl builddsp.pl c2h01.pl calc-tile.pl caller.pl camera01.pl checkifd.pl chk-srtm.pl chk4key.pl chkaircraft.pl chkatlaspal.pl chkbraces.pl chkcmake.pl chkdbgflag.pl chkdbgon.pl chkdupes.pl chkfgmenu.pl chkhlink1.pl chkhlinks.pl chkhsrc.pl chkhtml.pl chkifdef.pl chkincinc.pl chkinclist.pl chkintlinks.pl chklib.pl chklink.pl chklinks01.pl chklinks02.pl chklinks03.pl chklists.pl chklog.pl chkmain.pl chkmanifest.pl chkos.pl chkosgver.pl chkoutput.pl chkpath.pl chkperl.pl chkpylons.pl chkrelpath.pl chkrequire.pl chkrt.pl chkwebsrc.pl chkxml.pl chkziptxt.pl cleandiff.pl cleandiff02.pl cleanhtm.pl cleanhtm02.pl cleanhtm03.pl cleantd01.pl cleanup.pl cleanup02.pl client1.pl client2.pl client5.pl client6.pl clipboard01.pl cmp2dsps.pl cmp2dsps02.pl cmp2dsps03.pl cmp2dsw.pl cmparrays.pl cmpcomp.pl cmpconfigs.pl cmpdefines.pl cmpdirs.pl cmpdirs02.pl cmpdist.pl cmpexports.pl cmpfgpl.pl cmpini.pl cmptriangles.pl cmpvc8todsp.pl cmpvcprojs.pl cmpvcprojs02.pl codebox.pl color3.pl color4.pl color_rb.pl colors1.pl colors2.pl colortable.pl colour2.pl colours.pl com_03.pl comex1.pl comread.pl comread2.pl comread3.pl confscan.pl convcr.pl convdegrees.pl convstr-refout.pl convstranon.pl convstruct.pl copyhoh.pl countfile.pl countword.pl createdsp.pl createdsp02.pl createdsp03.pl csslist.pl currencyISO.pl cvstime.pl cvsversion.pl data2struct.pl datecalc.pl debug.pl dec2hex.pl def2stg.pl degs2rads.pl delline.pl delsame.pl delsvn.pl diffanal1.pl dir2list.pl dir2list02.pl dirbydate.pl dirbydateold.pl dirbyname.pl dirbysize.pl dircompact.pl dirdate-old.pl dirdate-old2.pl dirdate.pl direct.pl dirg.pl dirg2.pl dirg3.pl dirmin.pl dirrel.pl dirs.pl dirsizes.pl dirsizes02.pl dirsizes03.pl distance.pl distance02.pl DmmReg-test.pl dms2ll.pl doupload.pl download.pl downloadut.pl downloadut02.pl dsp2cfg.pl dswlist.pl dvdsizes.pl editgroup.pl elapsed.pl EmbedManifest.pl encode01.pl end.pl end02.pl env-cgi.pl eppearl.pl extra.pl extra2.pl extractwords.pl ExtUtils01.pl ExtUtils02.pl factorial.pl fav-01.pl fav-02.pl fav-03.pl fav-04.pl fav-04b.pl fav-05.pl favfind.pl fg-ac.pl fg01.pl fg_f14b.pl fg_getelev.pl fg_io_xml.pl fg_menu_xml.pl fg_server_xml2.pl fg_signs.pl fg_signs_convert.pl fg_signs_test.pl fg_sqaure-ok.pl fg_square.pl fg_telnet.pl fg_telnet02.pl fg_test.pl fg_wsg84.pl fgam2dsp.pl fgamscan-ok.pl fgamscan.pl fgapt01.pl fgchkaircraft.pl fgcmp2dsps.pl fgdsphdrs.old.pl fgdsphdrs.pl fgdsphdrs02.pl fgdsphdrs03.pl fgdspscan.pl fgfixfn.pl fggenmenu.pl fgmerge.pl fgscanvc-ok.pl fgscanvc.pl fgscanvc02.pl fgscanvc03.pl fgscenery.pl fgscenery02.pl fgshowmaterials.pl fgsln2dsw.pl fgsln2dsw02.pl fgslnlist.pl fgutils.pl fgutils02.pl fgvc2dsp.pl fgvc2dsp02.pl filecount.pl filelist.pl find-incs.pl find_dirs.pl find_in_inctrail.pl findap.pl findap02.pl findap03.pl findaps-win.pl findaps.pl findapX.pl findfiles.pl findfunc.pl findinc.pl findinfile.pl findinlib.pl findinpath.pl findmarray.pl findnumber.pl fixboostlist.pl fixcasts.pl fixcmakecache.pl fixdiff.pl fixdsp01.pl fixdsp02.pl fixdspfiles.pl fixfile.pl fixrelpath.pl fixtitle.pl fixwmdiag.pl foo.pl foobar.pl fork.pl fork02.pl form.pl fplist.pl ftpget01.pl gen-defines.pl genalt.pl genalt02.pl genascii.pl gencast.pl genclist.pl gendbgcode.pl gendbglist.pl gendef.pl gendotlist.pl gendowntable.pl gendowntable02.pl genentities.pl genfileindex.pl genfolderindex.pl genhtmindex.pl genimgindex.pl genindex.pl genindex2.pl genindex3.pl genjsarray.pl genmake.pl genmiscind.pl genpass.pl genprimes.pl gensiteindex.pl genslnlist.pl gensource.pl genspltable.pl gensrclist.pl genstruct.pl genstruct2.pl gensvnexcl.pl gentable.pl gentime.pl geo-metar.pl geo-metar02.pl geo-taf.pl getclopts.pl getcommits.pl getdifflist.pl getfgxlist.pl getfilecounts.pl getfunclist.pl gethost.pl gethost01.pl gethostbyip.pl gethrefs.pl gethrefs02.pl getifarray.pl getimgsize.pl GetIPreglocal.pl getmissing.pl getos.pl getpwd.pl gettaf01.pl geturl.pl geturl02.pl getvars.pl getvcdirs.pl getwarnlist.pl glGet.pl goto-test.pl gps01.pl gps02.pl gps03.pl guessdsp.pl h2h01.pl hashref.pl hashref02.pl hashtest.pl hasmain.pl hexconv.pl hgt_srtm.pl hommage-sql.pl hrefsub.pl hrefsub02.pl htmconv.pl htmimglist.pl html-dom.pl html01.pl html02.pl html03.pl html2text.pl htmllib.pl htmlparse.pl htmlparse02.pl htmltools.pl iftest.pl imagemagic.pl imgalt01.pl imgalt02.pl imgconvert.pl imgindex.pl imgindex02.pl imglist.pl imgratio.pl imgsize.pl inctrail.pl inctrail02.pl indexone.pl inphones.pl input.pl installed.pl IsLeapYear.pl isnumber.pl iso3166.pl iso3166bld.pl iso639.pl k2m.pl keyboard.pl km2miles.pl lib_acscan-new.pl lib_acscan.pl lib_amscan-bad.pl lib_amscan-new.pl lib_amscan.pl lib_confscan.pl lib_dsphdrs.pl lib_dspscan.pl lib_fgio.pl lib_html.pl lib_params.pl lib_srcscan.pl lib_utils.pl lib_vcscan.pl lib_xml.pl linecount.pl lineendings.pl lineends.pl linkhtml.pl linkhtml02.pl list2array.pl listap01.pl listexes.pl listfpfolders.pl listlibs.pl listobj.pl listregex.pl listrepodirs.pl ll2dms.pl ll2xyz.pl loadtable.pl location.pl logfile.pl m4scan-old.pl m4scan.pl main.pl main02.pl mainorg.pl makesrcs.pl makesrcs02.pl match.pl math-trig.pl math_trig.pl md5.pl md5sum.pl merc2wsg84.pl mergetest01.pl meters2feet.pl meters2miles.pl miles2meters.pl modlist.pl module-version.pl modvers.pl moonstuff.pl morse.pl movedsp.pl mph2fps.pl mph2knot.pl mruvc8-02.pl mruvc8.pl msfs-fp.pl msh2sh.pl msvc8incs.pl msvcvers.pl myDebug2.pl nasa-srtm-range.pl newfolders.pl newproj.pl numsort.pl ObjectVariableTest.pl oldindex.pl opendir01.pl opendir02.pl order.pl osgvers.pl osm-gpx.pl osm-load.pl p2h.pl p2h01.pl p2h02.pl p2h03.pl p2h04.pl p2hall.pl p2hall01.pl p2hall02.pl p2hall03.pl p2html.pl p2html10.pl p2html11.pl p2html11b.pl p2html12.pl p2html2.pl p2html3.pl p2html4.pl p2html5.pl p2html6.pl p2html7.pl p2html8.pl p2html9.pl p2htxt01.pl p2hutil.pl package.pl pageview02.pl pageviewer.pl parse-xml.pl parse-xml02.pl parse-xml03.pl patch-conv.pl perl-list.pl perms.pl person01.pl php2htm01.pl php2htm02.pl plandevol-eng.pl plandevol-eng01.pl print-literals.pl printenv.pl probe-os.pl proclist.pl QtPro.pl rads2degs.pl randgif1.pl ratio.pl read-keyboard.pl readcfg.pl readlog.pl recent.pl redbrick.pl ref.pl refs.pl reg01.pl reg02.pl reg03.pl reg04.pl reg05.pl regclass.pl relative.pl relinehtm.pl relinejs.pl relinetxt.pl reltest.pl replace01.pl samp01.pl scanconfac.pl scanvc.pl secsinyear.pl sendmail01.pl server0.pl server2.pl server3.pl server4.pl server5.pl server6.pl set-bucket.pl setdbgflag.pl setifdef.pl sgutil.pl sh2htm.pl sha1sum.pl show-@inc.pl show-bucket.pl showalbumdat.pl showanchors.pl showbuildsrcs.pl showcmd.pl showdefs.pl showdsp.pl showenv.pl showhrefs.pl showincs.pl showjava.pl showpiperxml.pl showplayback.pl showsm01.pl showsrcs.pl showsrcs2.pl showsrcs3.pl showsymbols.pl showvcincs.pl shwmake.pl shwmemdbg.pl shwplay.pl shwsct.pl sitemap.pl sitemap02.pl sln2dsw.pl sln2dsw02.pl sln2std.pl slnlist.pl slurptest.pl solve-ok.pl solve.pl sortcss.pl sortres.pl space2tab.pl split_words.pl srtm-list.pl srtm_data.pl stat01.pl stat02.pl stdintest.pl stripcols.pl striphtml.pl striphtml02.pl striphtml03.pl stripleft.pl stripleft02.pl stripms.pl stripms2.pl stripms3.pl stripms4.pl stripms5.pl stripms6.pl stripspan.pl sublist.pl sublist02.pl subref.pl substr01.pl sum.pl svnexclude.pl svnvers.pl t2html.pl table2hash.pl table2str.pl tafacronyms.pl tanlist.pl telnet2fg.pl temp1.pl test-bucket.pl test-bucket2.pl test-eval.pl test-eval02.pl test-file-spec.pl test-hash-ref.pl test-time.pl test-url-uri.pl test.pl test1.pl test10.pl test11.pl test12.pl test13.pl test14.pl test2.pl test3.pl test4.pl test5.pl test6.pl test7.pl test8.pl test9.pl test_req1.pl test_req2.pl test_x.pl testbits.pl testcolor.pl testdsphdrs.pl testfish.pl testiso.pl testiso2.pl testpage.pl tests2d.pl testsock.pl testsock1.pl thread1.pl thread2.pl Tidy01.pl Tidy02.pl tidycmp.pl tidycmp02.pl tidytxt.pl tidyword.pl timing.pl touch.pl trimdf01.pl txfdump.pl txt2htm.pl txt2htm02.pl typefile.pl typeglob-assignment.pl typeglob-name-package.pl unicode.pl unixit.pl unlink.pl utf_16_BOM.pl utils.pl vartypes.pl vc6srcs01.pl vc8cmp-01.pl vc8cmp-02.pl vc8config.pl vc8srcs01.pl vc8srcs02.pl vc8srcs03.pl vc_cmp.pl vc_sln.pl vcdelcfg.pl vcfix.pl vcproj01.pl vcproj02.pl vcproj03.pl vcproj04.pl vcproj05.pl vcprojlist.pl viewperl.pl viewperl2.pl viewperl3.pl wakeup-call.pl wordindex01.pl wsg842mercator.pl xml01.pl xml02.pl xml03.pl xml04.pl xml05.pl xml06.pl xml07.pl xml08.pl xml2h01.pl xml_test.pl xmldom01.pl xmldom02.pl xmlfgair.pl xmlfgkey.pl xmlfgkey2.pl xmlfgkey3.pl xmlfix01.pl xmlfix02.pl xmlgparse.pl xmllibxml01.pl xmlreline.pl xmlsax01.pl xmlsaxmail01.pl xmlsimple.pl xmltwig01.pl xmltwig02.pl xmlwin32.pl xmlwrap02.pl xmlwrap03.pl xmlwrapper.pl zipindex.pl zipindex02.pl zipindex03.pl zipindex04.pl

top Alphabetic List

List of 794 perl files as at 2011/12/23, generated by perl-list.pl