Hugo content Markdown files cannot use Hugo variables directly.
The way to access variables (including
site parameters,
data sources,
and front matter) from content Markdown files is to use Hugo
shortcodes
or to use a custom template for those content pages.
However, areas inside
code fences
cannot use shortcodes.
What I wanted to do was make examples of code inside code fences used on several pages on my site update with a version number.
However, I don’t currently see a feasible way to do this with Hugo that wouldn’t be overly specific to the particular set of examples.
It’s OK, I wanted to note this limitation I ran into.
An alternative is to use find/replace across files like “sed” or the VSCode GUI.
To run Linux programs on a Windows computer, normally Windows Subsystem from Linux (built into Windows by Microsoft) is generally the best / most performant way to run most Linux programs, especially programs relevant to data processing and geospace science in general.
The macOS network interface priority order determines which network interface (like WiFi, Ethernet, etc.) the system uses first when multiple interfaces are available.
Set this priority order through the
System Preferences
or via the
command line:
Several countries have created an 8 meter ham band near 40 MHz.
The USA FCC has a proposed rulemaking
RM-11843
to create an 8 meter ham band in the USA.
A key conflicting user SNOTEL, which used meteorburst communications to connect very remote sites, has
ceased use
of the 40 MHz band.
As
commenters
indicate, a rich surplus equipment market exists of military surplus radios and commercial equipment that can be used on the 8 meter ham band.
Proposed bandplans allocate FM, CW, and digital modes.
This 8 meter band proposal stands in contrast to the 2014 proposal to make a 4m 70 MHz allocation as exists in numerous other countries around the world.
The FCC
summarily dismissed
the 4m proposal due to incumbent TV channel 4 users.
Use
this link
to query the FCC TV database for channel 4 users.
For example, in 2025 there were about 10 full-power DTV licensees (including newly coming on air) across the USA on TV channel 4, an increase from 2014 licensees.
Since other countries have
allocations
close to 70 MHz, the best option for USA ham in the 4m band may be to co-exist in the 72-76 MHz
band,
perhaps in-between the existing 20 kHz spaced channels.
Since typical 4m radios cover 66 MHz - 88 MHz, for international DX, USA hams could receive on 70 MHz and transmit on 72-76 MHz channels.
This would be akin to operations for international DX for USA hams in the 60 meter channelized band.
A general rule for compiling and running old code in any language is to first try to get it working for known input / output via emulation or virtual machine.
Many old codes were made before linters and other correctness checks we’ve long taken for granted.
The codes may use non-standard tricks to boost efficiency that haven’t been significant for decades.
A modern Fortran compiler that can compile Fortran 66 standard code without modification is Intel oneAPI.
The
-f66
flag enables Fortran 66 compatibility.
A key behavior difference with Fortran 66 is that Do loops always run at least once.
This behavior is not available in Gfortran.
If one has the ability to use a virtual machine with unmaintained compilers like g77 and the -fonetrip flag, this behavior can be emulated.
However, this behavior was simply
not addressed
in the
Fortran 66 standard.
After correct operation is established, Fortran 66 code often needs adjustments to work with modern compilers.
The Fortran Wiki has an excellent article on
modernizing Fortran syntax.
Always make a copy of the file first.
Sometimes 10,000+ lines will match so it can be tedious to check.
Similar operations may be needed if a mix of tabs and spaces are used.
To move line numbers left, run this regex and replace with null (nothing):
^\s+(?=\d+\s)
To make code start in column 7, recall that fixed format (Fortran <= 77) code has line numbers in columns 1-5 of each line numbers
After the prior operation, push the actual code right of column 6 by replacing this regex with appropriate number of spaces:
(?<=^\d+\s+)
Other compatibility notes:
$ can be used like a semicolon in CDC Cyber Fortran
put procedures in separate files for duplicated line numbers.
Matlab has numerous factory toolboxes that are referred to in two distinct ways: “Product Names” and “Feature Names”.
The “Product Name” is the official plain English name of the toolbox, while the “Feature Name” is a more specific identifier used within Matlab.
For example, “MATLAB Test” is the Product Name, and “MATLAB_Test” is also the Feature Name.
The mapping between names is not always just by replacement of spaces with underscores.
To programmatically access the list of toolboxes Product Names, use the ver command in Matlab, which returns a structure array containing both the Product Names.
Then extract the Feature Names from the structure.
Matlab documentation discloses in which Matlab release a function was introduced.
Sometimes the documentation omits to say when a feature / option was added to an existing function.
To avoid needless iterating and possible misapplications of a function in an older release, it’s useful to check the
previous Matlab release documentation.
After clicking on a specific release, one can search for functions within that release only.
Across operating systems, “hibernate” is a power-saving state that saves the current session to disk and powers down the computer, allowing for a quick resume later while not having the long-term battery drain of suspend mode that keeps the RAM powered.
Sometimes as part of diagnosing problems or ensuring that a remote computer stays powered on, hibernate might be disabled.
If restoring such a computer to personal use, or if experiencing issues where a laptop computer has a drained battery after a couple days of non-use, it may be useful to enable hibernate mode.
Check the current state of hibernate mode by running the following command in Windows Terminal:
powercfg /availablesleepstates
If hibernate is enabled, the output will include “Hibernate” in the list of available sleep states.
To enable hibernate mode:
powercfg /hibernate on
However, the option in Control Panel → Power Options → Change plan settings → Change advanced power settings → Sleep → “Hibernate after”
may not be available until making the following registry change:
Reopen The Control Panel → Power Options → Change plan settings → Change advanced power settings, and the “Hibernate after” option should now be available.
Alternatively, enable the hibernate timer setting from the Terminal, where the values are in minutes:
powercfg /setACvalueindex scheme_current SUB_SLEEP HIBERNATEIDLE 43200# 12 hours hibernate while plugged into AC power (or set to 0 for never)powercfg /setDCvalueindex scheme_current SUB_SLEEP HIBERNATEIDLE 10800# 3 hours hibernate while on battery (or set to 0 for never)powercfg /setactive SCHEME_CURRENT
# Set the current power scheme to apply changes