Archive

Archive for the ‘service-is-documenting’ Category

To retrieve a hidden Find Text window of MZ-Tools

  1. … close all your other undocked windows in VBE Editor.
  2. Must have been hidden during inadvertent docking and took me a while…

mztools-unhide-find-text

How to add multiple clips to the timeline in Expression Encoder – at once

  1. Expression Encoder is a great screen casting tool for Windows – and it is free.
  2. Except that in the free version, each clip is limited to 10 minutes. This can result in many clips that you nee to combine to document one session.
  3. Adding clips to the media and encode them does not roll over at the end of one to the next clip (different from as things used to Work in Windows Media Encoder) – it produces as many output files.
  4. Using the Add Source at End Cc294622.5bff4edb-e4d1-4fca-b268-0d194faf13d1(en-us,Expression.30).png. button seems to limit you to adding one clip after the other. image
  5. What I had missed so far: You can simply select multiple clips at once in the file open dialogue.
  6. Expression Encoder will add all to the timeline in sequence, and encode all to one output file: image

Have your VBA Add-in autogenerate menus for easier access to your macros

  1. P_20160720_203804
  2. Storing your macros in add-ins (.xlam) has many advantages over personal.xlsm and similar document locations.
  3. One disadvantage however is that an Add-in macro is not accessible through the Excel macros dialogue.
  4. The community recommends assigning shortcuts for easy access. I did that and went a couple of steps further using VBE extensibility to
    1. depending on scope
      1. public procedures on your end users’ computer to whom you distribute your Add-in
      2. and also non-private on the developer  machine
    2. list your modules alphabetically
    3. list your macros alphabetically under your modules
    4. for each, find & assign a free (free within Excel only –  short of assigned windows-wide shortcuts  since in my current work environment, I am unable run tools that allow you to list these shortcuts) shortcut combination,
    5. automatically generate an Add-Ins menu of all that , to serve as a cheat sheet.
  5. Code TBA

How to easily rearrange your sections via the headings in MS-Word’s Navigation Pane

  1. Short answer Show Navigation (from ribbon ./ View), then Drag&drop/
  2. word-navigation-pane-drag-headings
  3. Maybe obvious, but had escaped me so far – I thought such ease would only come only with outline view  – what a great feature!

Which UML diagram types are in most demand?

  1. From a recent spot check of over 500 job postings on Indeed.com that mention both “UML” and “diagram”, the following picture emerges:
  2. There is clearly a Big 4 of UML diagram types, and they are  – in order of frequency –
    1. sequence,
    2. use-case,
    3. activity and
    4. (the only structural diagram type that “counts”) class diagram.
  3. UML Diagram Type Count of type
    activity 19.33%
    class 15.33%
    communication 6.00%
    component 2.67%
    interaction 1.33%
    network-architecture 1.33%
    object 2.00%
    sequence 23.33%
    state 8.00%
    timing 0.67%
    use-case 20.00%
    Grand Total 100.00%
  4. It seems you could in practice cover “80%’ of UML with these four diagram types. Even state and communication  (collaboration) diagrams are an already very distant 5th and 6th (but get you up to a coverage of about 95%).
  5. Notably, the majority of UML diagram types – at least in this sample set – do not figure at all:
Count of type Diagram
0 Behavioral state machine
0 Collaboration use
0 Composite structure
0 Deployment
0 Information flow
0 Interaction overview
0 Internal structure
0 Manifestation
0 Model
0 Package
0 Profile
0 Protocol state machine

Note: The vast majority of mentions did not need any, but I attempted some translations of the raw data on indeed.com:

indeed.com counted as
action activity
collaboration (1) communication (2)
data flow information flow
domain model class diagram
object models object
state charts state machine
process flow 1 not counted
swim lane sequence
prototypes 1 not counted
Categories: service-is-documenting Tags:

How to ease editing work in MS-Word by automating search/replace operations

  1. If you frequently have to edit documents according to a large number of editorial rules and regulations
  2. and if you can partially automate these edit operations  (or at least highlight suspicious passages for human review) with Word’s search/replace,
  3. I can recommend an add-in that can automate even the repeated search/replace operations (like the 57 in the video below)
  4. and even help you manage your search/replace strings and regular expressions in a spreadsheet which it can load from:
  5. Greg Maxey’s VBA Find & Replace Word Add-in. See it in action (click for full size):
  6. vbareplace
  7. Two Three Caveats: :
    1. At this point, I cannot get the add-in to work only in Word 2010. Even if I lower Macro security and allow programmatic access to the VBA project, when trying to launch the add-in from the ribbon, Word 2013 complains: “The macro cannot be found or has been disabled due to your macro security settings”:image.
    2. The automation is only as good as your underlying search/replace operations. (Hint: “Some people, when confronted with a problem, think ‘I know, I’ll use regular expressions.’ Now they have two problems.”)
    3. I think I will refrain from search/replace during “Tracking changes” – as in the video – , and rather use “Compare documents” after the replace operations – too many quirks otherwise…

How to define your own conditional content marker “Internal” for Doxygen

  1. Doxygen comes with a built-in conditional content marker \internal the outputting of which can be controlled with the switch INTERNAL_DOCS in Doxygen’s config file.
  2. However, I could not get this to work as advertised in Doxygen 1.8.8.
  3. In cases of similar feature breakage, users are commonly advised to fix the error in the Doxygen source. If you, like I did, lack the time for that, here is a simple workaround which uses another built-in feature that an be controlled via  Doxygen’s config file:
  4. Define as one of the:
    ALIASES = "myinternal=\if myinternal <HR><kbd><em>" \
              "endmyinternal= </em></kbd> \endif"
    # HTML is optional, intended to make internal information stand out clearly if outputted
  5. Switch this ALIAS on and off using ENABLED_SECTIONS       = # myinternal
  6. Example usage in a .dox file:
    -# A high-low-high-low beep sequence followed by a low-high beep
     sequence indicates successful pairing and connection to the remote
     device.
     @myinternal tested with barcode on lower-end of cradle: gives success
     beep sequence @endmyinternal
     -# A long low, long high beep sequence indicates unsuccessful pairing.

     

Getting Eclipse CDT to spell check non-source files

  1. Problem:
    1. Using Eclipse Luna CDT, with C/C++ spelling engine, to document C and C++ code in Doxygen (Eclox plugin), image
    2. Spell check works for inline Doxygen documentation. My API-level code comments in *.[ch](pp)* files gets spell-checked alright (Well…:
      1. I had  to download a decent dictionary to avoid recommendation like this one: image. I am using the aspell dictionaries from here and here.  This is before a restart/recheck:image
      2. I still do not know how to teach the C++ spell check engine that a newline does not start a new sentence: image
      3. The oft-referred to menu: Edit / Spell check does not show up for me: image
    3. However, spell check ignores my standalone *.dox files with high-level documentation.
  2. What I have tried:
    1. Telling Eclipse about the*.dox file type: image
    2. Associating *.dox files with the Doxyfile editor: image. Fail. This tool from the Eclox plugin seems to help only with the editing of the Doxygen config file. image
    3. Associating *.dox files with C/C++-editor: image Fail: has no effect.
  3. Workaround:
    1. Terrible, but since a similar question is still open on stackoverflow): If you can (*.dox requires all comments to be within c-style comments anyway), rename your *.dox files to *.dox.cpp. Terrible, but works: image
    2. A bit less terrible if you mange to store your standalone *.dox files as *.dox.cpp permanently do this if you get your Doxygen to handle these extensions.
    3. What is nice to see is that the spell-checker  recognizes Doxygen’s built-in reserved words (as opposed to my custom-defined Doxygen-commands). image
  4. Other things to try:
    1. I could not get Hunspell4Eclipse to work, despite going to considerable trouble getting the marketplace into my Eclipse installation
    2. I have not tried eSpell.