Quick Drop Enthusiasts

cancel
Showing results for 
Search instead for 
Did you mean: 

Feedback Requested: New Default Object Shortcuts

My proposal to ship default shortcuts in LabVIEW 2016 has been approved, and I have completed the code changes for the feature. As part of this feature, I would like to standardize the object shortcuts that will ship with LabVIEW 2016. This includes shortcuts that will be used for non-English LabVIEW. Below is the list of object shortcuts I plan on shipping in LabVIEW 2016. Note that this list has the following requirements:

1. Objects that are commonly dropped. I don't want to have a shortcut for every single item in the palettes.

2. Objects that are part of the default LabVIEW Core palette set for Windows, Mac, and Linux. That means I have excluded things like Timed Loop (Windows only), New VI Object function (requires scripting to be enabled), etc.

3. Shortcuts can be easily typed with the left hand only.

Please let me know if you have any feedback on these shortcuts. Note that they are slightly different than my original list that has been available for many years, so I'll be re-learning a few things myself as well.  I'd like to have the "final" list available in the LabVIEW 2016 beta, so if you find anything glaringly offensive or absent in the list below, please reply to this thread soon.

As a reminder, you will not be forced to use these shortcuts. If you copy over your LabVIEW INI file from 2015 or earlier into 2016, your existing shortcut list will be used. This list is only the *default* set, i.e. the set that gets installed if the user doesn't have any pre-existing shortcuts defined. There will also be a button in the Quick Drop Configuration dialog to reset whatever existing shortcuts are present to the default set.

Thanks everybody for all your feedback so far, I'm really excited and hopeful that we'll see even more Quick Drop adoption take place as a result of this feature in LabVIEW 2016.

Proposed Default Front Panel Object Shortcuts (rev2)

acArray
athcFile Path Control
athnFile Path Indicator
bcPush Button
bnRound LED
cbFramed Color Box
ccCluster
crControl Refnum
enEnum
ercError In 3D.ctl
ernError Out 3D.ctl
ncNumeric Control
nnNumeric Indicator
sacSelect a Control...
scString Control
snString Indicator
vrVI Refnum
wcWaveform Chart
wgWaveform Graph
xgXY Graph

Proposed Default Block Diagram Object Shortcuts (rev2)

1dgOne Button Dialog
2asMatrix Size
2dgTwo Button Dialog
3dg Three Button Dialog.vi
aaeAdd Array Elements
acArray Constant
ad1Increment
asArray Size
asbArray Subset
atchMatch Pattern
athcPath Constant
atsArray To Spreadsheet String
avgMean.vi [NI_AALBase.lvlib]
baBuild Array
bathBuild Path
bbnBundle By Name
carCompound Arithmetic
cbColor Box Constant
cbrCall By Reference
ccCluster Constant
ccatConcatenate Strings
cdsConditional Disable Structure
cerrClear Errors.vi
cfClose File
cmdSystem Exec.vi
crClose Reference
crfOpen/Create/Replace File
csCase Structure
cscClass Specifier Constant
cvCurrent VI's Path
dblTo Double Precision Float
dcDBL Numeric Constant
ddsDiagram Disable Structure
decDecrement
dfaDelete From Array
dqDequeue Element
dvDivide
eaEmpty Array?
eathEmpty Path Constant
ecError Cluster Constant
ecfError Cluster From Error Code.vi
eqEqual?
eqzEqual To 0?
erError Ring
ergMerge Errors
essLess?
esseqLess Or Equal?
esseqzLess Or Equal To 0?
esszLess Than 0?
estrEmpty String/Path?
estrcEmpty String Constant
evstrEvent Structure
extTo Extended Precision Float
fbFeedback Node
fcFalse Constant
fcaFirst Call?
fsFor Loop
fssFlat Sequence Structure
fstrFormat Into String
fxpTo Fixed-Point
geqGreater Or Equal?
geqzGreater Or Equal To 0?
grGreater?
grzGreater Than 0?
i16To Word Integer
i32To Long Integer
i64To Quad Integer
i8To Byte Integer
infPositive Infinity
-infNegative Infinity
naInitialize Array
naeAnd Array Elements
nanNot A Number/Path/Refnum?
ncNumeric Constant
ndxIndex Array
neqNot Equal?
neqzNot Equal To 0?
nesIn Place Element Structure
nqEnqueue Element
ntNot
nvInvoke Node
qrQuotient & Remainder
raReverse 1D Array
rasReplace Array Subset
rbfRead from Binary File
rnProperty Node
rnddRound Towards -Infinity
rnduRound Towards +Infinity
rtfRead from Text File
s1dSearch 1D Array
sathStrip Path
savSelect a VI...
sbSubtract
scString Constant
seSelect
sengString Length
serrSimple Error Handler.vi
sglTo Single Precision Float
sqrSquare Root
srtSort 1D Array
sssSearch/Split String
staSpreadsheet String To Array
svrStatic VI Reference
tcTrue Constant
tcaseTo Lower Case
tctTick Count (ms)
traTranspose 2D Array
tscTo More Specific Class
tvarTo Variant
u16To Unsigned Word Integer
u32To Unsigned Long Integer
u64To Unsigned Quad Integer
u8To Unsigned Byte Integer
ubnUnbundle By Name
vaeOr Array Elements
vcVariant Constant
vrOpen VI Reference
vsrVI Server Reference
vtdVariant To Data
watWait (ms)
wbfWrite to Binary File
wcWaveform Constant
wsWhile Loop
wtfWrite to Text File
xMultiply
xaeMultiple Array Elements
Message 1 of 14
(10,155 Views)

Block Diagram Functions

For me I prefer constants to have a shortcut that is the one letter for that data type, and then the letter c.  There are a few exceptions but for the most part this helps discover shortcuts to constants you may have forgotten about.  So for me I would make the following changes to be consistent

ac - Array Constant

pc - Path Constant

cc - Cluster Constant

ec - Error Cluster Constant

nc - Numeric Constant

sc - String Constant

vc - Variant Constant

wc - Waveform Constant (not on the list)

Here are a few I'd also change, or have changed in my personal config.  For me being able to remember them is more important thant only using my right hand.  If I can't remember it, it doesn't matter how useful of a shortcut it is.

ce - Clear Error (you have cerr)

me - Merge Error (I can see a preference to right handedness)

mul - Multiply (ex?)

cat - Concatenate String (currently ccat)

in - Invoke Node (right handed preference)

pn - Property Node (right handed preference)

tv - To Variant (currently tvar)

div - Divide (currently dv)

sp - Strip Path (currently sath, wasn't it always sp?)

bp - Build Path (currently bath, wasn't it always bp?)

rdf - Read From Text File (currently rt)

wrf - Write to Text File (currently wt)

db - To Double Point Precision (currently tdb)

And here are a few new functions that I don't think you have that I find useful.

cmd - System Exec.vi

sl - String Length

vi - VI Server Reference (this drops a "This VI" reference)

i8 - To Byte Integer

i16 - To Word Integer

i32 - To Long Integer

i64 - ...

u8 - ...

u16 - ...

u32 - ...

u64 - ...

ti - To Time Stamp

tra - Transpose 2D Array

inf - Positive Infinity

Front Panel Controls

Similarly to the comment about the constants earlier, I also prefer things like one letter then the letter c for control, or one letter then the letter i for indicator.

ac - Array

cc - Cluster

ec - Error Controls (this is a VI that merges both a modern Error In and Error Out)

pc - Path Control

pi - Path Indicator

sc - String Control

si - String Indicator

ni - Numeric Indicator

If we haven't already discussed this, I think you know my general opinion is that remembering the function is much more important than being able to do it with one hand.  If it takes 8 seconds to find it on the palette, or takes 1.5s to type "bp" then move my hand back to the mouse, or if it takes 1.0s to type "bath" I'd still prefer typing "bp" because I'll actully use it.  Maybe the other people brains are wired different, and maybe I'd remember the new method. 

Actually I just noticed several of your right handled shortcuts use the right hand of the keyboard, I can't actually type bath without using my left hand since my two keyboard halfs are about 4 inches apart.  Anyway glad to hear there will be some kind of standard, even if it is one I don't fully agree with.

Message 2 of 14
(7,218 Views)

I lean towards Brian's direction, but since quick drop can have more than one shortcut for an item, maybe make shortcuts for both styles?  i.e. both "bp" and "bath"?

I'll upvote these conversion types:

i8 - To Byte Integer

i16 - To Word Integer

i32 - To Long Integer

i64

u8

u16

u32

u64

sgl

dbl

ext

fxp

Also, because it is natural :

sqrt     square root

/      quotient

=     equals

=>     greater or equal

=>0     greater or equal to zero

...

mean        mean.vi (instead of getting "mean ptbypt.vi" as the top hit)

fft              fft.vi (instead of getting "fft ptbypt.vi" as the top hit)

sum          add array elements

product     multiply array elements

round down Round towards - Inf    

round up     Round towards + Inf

v2d          Variant to data

0 Kudos
Message 3 of 14
(7,218 Views)

Brian Hoover wrote:

ac - Array Constant

pc - Path Constant

cc - Cluster Constant

ec - Error Cluster Constant

nc - Numeric Constant

sc - String Constant

vc - Variant Constant

wc - Waveform Constant (not on the list)

I prefer the idea of having the "c" at the end of these as well.  Just extra letter does make it easier for my brain to remember what the shortcut is.

Brian Hoover wrote:

rdf - Read From Text File (currently rt)

wrf - Write to Text File (currently wt)

I would prefer these instead:

rtf - Read from Text File

wtf - Write to Text File

rbf - Read from Binary File

wbf - Write To Binary File

Going with the first letters of each main word is the easiest to remember.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 4 of 14
(7,218 Views)

Consistency is the key for me. I see what you did with "vae - Or Array Elements" but shortcuts like that are a deviation from how the majority are constructed and require an addtional bit of knowledge to use that should ideally be avoided.

Going with the first letter of each main word, as crossrulz suggests, works for me but suspect even this method will have issues as letter combinations get used up.

0 Kudos
Message 5 of 14
(7,219 Views)

This news makes this IE idea relevant again - quick drop shortcut context help.

Jim
You're entirely bonkers. But I'll tell you a secret. All the best people are. ~ Alice
For he does not know what will happen; So who can tell him when it will occur? Eccl. 8:7

0 Kudos
Message 6 of 14
(7,219 Views)

crossrulz wrote:

I would prefer these instead:

rtf - Read from Text File

wtf - Write to Text File

rbf - Read from Binary File

wbf - Write To Binary File

Going with the first letters of each main word is the easiest to remember.

I don't feel strongly one way or another, it's just Read in my mind can be shortened to RD, and Write to WR, maybe it is years of icon editing, and trying to squeeze every character I can.

I'd suggest that the vae for Or Array Elements may have came from the nae for And Array Elements, because aae was taken for the Add Array Elements. 

0 Kudos
Message 7 of 14
(7,219 Views)

Thanks for the feedback, everybody! After taking into account y'all's feedback, I have posted rev 2 of the proposed default shortcuts above. Here are some notes regarding the changes:

1. I decided not to include shortcuts for multiple objects ('bath' and 'bp' for Build Path, e.g.). The reason is that, if you're moving your right hand over to the keyboard to type, then you've already incurred the penalty of the hand switch, and typing additional characters to auto-complete the object name is a negligible increase in the time it will take to specify the object. Plus, we're currently at 126 shortcuts on the diagram, which seems like a lot to me. Cutting out shortcuts for duplicate objects seemed like the easiest way to keep the size of the list down.

2. I included some shortcuts that require the right-hand to type. These are shortcuts like "i32", "cmd", etc., that don't have a legitimate left-hand-only counterpart, but are still useful shorthand for commonly-used objects.

3. I agree with the suggestions that constant shortcuts should all end in 'c', so I made that change. And to be consistent on the panel, I also made Array and Cluster be 'ac' and 'cc', respectively.

Let me know if y'all have any additional feedback on the 'rev2' lists.

Message 8 of 14
(7,219 Views)

Sweet, rev 2 looks pretty good.  Obviously there are some things I don't agree with, but other things I can get used to.  Besides some things I'm going to want a specific way that maybe no one else will want, which is where I can customize my setup.

0 Kudos
Message 9 of 14
(7,219 Views)

Forgive me if I've missed the discussion elsewhere, but have there been any requests for single-key shortcuts? I'm not sure if I just execute the query too soon, or if there's some lag in the quick drop lookup but I find that I frequently drop a CAR when I intended a CS (the S didn't make it in). Sometimes it's a WAT instead of a WS. For the common ones I've written single-key shortcuts. Anyone else had this trouble? Any appeal for single-key shortcuts?

0 Kudos
Message 10 of 14
(7,219 Views)