Jump to content

Creating Custom Keyboard Shortcuts with Multiple Object Snaps.


Scottie Fox

Recommended Posts

"Appload"

Then click on Start up suite Choose Add ben2017.lsp it will then load every time you start autocad. 

Just add to Ben2017.lsp  any other routines you want loaded.

 

 

 

screenshot151.png

Link to comment
Share on other sites

1 hour ago, BIGAL said:

"Appload"

Then click on Start up suite Choose Add ben2017.lsp it will then load every time you start autocad. 

Just add to Ben2017.lsp  any other routines you want loaded.

 

 

 

screenshot151.png

 

I'm a little confused.. Did you edit the original LISP file I uploaded as I can't see anything?

 

I've tried adding the Macro you suggested to the file myself but it still won't work, which is why I was hoping someone else could do it for me so I know that it is correct.

 

ben2017.lsp is already in my Startup Suite, so I just need the Macro command added to it and I'll replace the existing file with the edited one.

Link to comment
Share on other sites

10 hours ago, Scottie Fox said:

Hello, again!

 

Thank you for the links and additional information; I'll definitely do some further reading and will likely watch that tutorial series I linked also.

 

In the meantime, would it be possible for you to create an ACADDOC.lsp file for me with the macro / command I'm after then send me instructions / screen shots on how to activate it?

 

At least this way I'll have an actual working example to work with and learn from?

Try saving ACADDOC.lsp in your Roamable Support Folder which you can open by entering 

(progn(startapp "explorer" (strcat "/n,/e," (getvar "roamablerootprefix")"Support"))(princ)) 

on the command line, then in Options on the Files tab make sure that Support folder is listed in Trusted Locations. Add it if necessary.

(princ "\n\"Acaddoc.lsp\" loading.")
; This file is loaded automatically by AutoCAD every time a drawing is opened.
; As with AutoLISP files, AutoCAD searches the library path for the specified file.
; If you need to load a file that is not in the library path, you must provide the
; full path-name description of the file.
; Be sure to use a single slash (/) or two backslashes (\\) as the directory
(setvar 'MODEMACRO
    (strcat
         "$(If,$(Eq,$(Getvar,dbmod),0),,* )" 	;The asterisk indicates the drawing has been modified.
;         "$(getvar,cprofile)" 				;Current Profile
;         ", $(getvar,wscurrent)"				;Current Workspace
         "$(getvar,textstyle) "
         "$(*, $(rtos, $(getvar,cannoscalevalue), 2, 2), $(getvar,textsize)) "
;         " $(getvar,textsize) "
;         "$(if,$(and,1,$(getvar,cmdactive)),$(getvar, cmdnames))"
         "$(if,$(and,1,$(getvar,pickstyle)),<Group on> ,<Group off> )"
;         "$(if,$(and,1,$(getvar,pickstyle)),Group )"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,1,$(getvar,osmode)),E))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,2,$(getvar,osmode)),M))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,4,$(getvar,osmode)),C))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,8,$(getvar,osmode)),Nod))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,16,$(getvar,osmode)),Q))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,32,$(getvar,osmode)),Int))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,4096,$(getvar,osmode)),Ex))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,64,$(getvar,osmode)),Ins))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,128,$(getvar,osmode)),Per))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,256,$(getvar,osmode)),T))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,512,$(getvar,osmode)),Nea))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,2048,$(getvar,osmode)),A))"
         "$(if,$(and,16384,$(getvar,osmode)),,$(if,$(and,8192,$(getvar,osmode)),Par))"
         "$(if, $(!=, $(getvar,viewtwist), 0), Viewtwist: $(angtos, $(getvar,viewtwist) [, 0, 2]) , )"	;Thanks alanjt
         "$(if, $(!=, $(strlen,$(getvar,refeditname)), 0), Xref = $(getvar,refeditname))"
         "$(If,$(Eq,$(Getvar,PStyleMode),0),STB,CTB )"
         "$(if,$(>, $(getvar,dynmode), 0),$(if,$(=,$(getvar,dynpicoords),0),@,#),#)"	;Dynamic coordinate entry.
         " $(getvar, cmdnames)"
    )
)
(load "ben2017.lsp")
(princ "\n\"Acaddoc.lsp\" loaded.")
(princ)

It should let you know it's loading, set you MODEMACRO to display information on the Status Bar allowing you to see current settings at a glance, load your ben2017.lsp (assuming it's in the support path which is in Trusted Locations as well) at the end, and let you know it loaded. The MODEMACRO value is not saved anywhere so it will have no lasting effect.

It's best to avoid using COMMAND calls in ACAD.lsp or ACADDOC.lsp which is why I didn't just rename your ben2017.lsp to ACADDOC.lsp. 

Link to comment
Share on other sites

Sounds like the problem is in the file you are using not the loading, post ben2017.lsp. Note you can also add (setvar 'osmode 47) in your ben2017 this will force osmode to be default correct on start up. Change number to suit.

Link to comment
Share on other sites

Hi, you can make shortcut by Customize Keyboard in AutoCAD or even in BricsCAD like Alt+C to center snap or something. It is fastest way I know to snap I used to thought about this problem. Regards.

Link to comment
Share on other sites

Well everyone this is certainly a lot to take in, so I'm probably going to disappear for a bit while I read up more on the suggested content and watch the video series I found.

 

Thank you all very, very much for all of your help; hopefully when you see me next I'll know what I'm doing and may be able to help the next time someone is having similar issues.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

This is what I've been using for Keyboard OSnaps since v2.5 DOS. Chuck it into any  *.mnu  file you are loading in your workspace. Make a simple keyboard overlay while you learn them. I still have many LISP overrides, but these I use for general drafting. 

------------------------

***ACCELERATORS
//Re-defining Defaults
ID_Copyclip  [CONTROL+"C"]
ID_TextFind  [CONTROL+"I"]
ID_New       [CONTROL+"N"]
ID_Open      [CONTROL+"O"]
ID_Print     [CONTROL+"P"]
ID_Save      [CONTROL+"S"]
ID_Pasteclip [CONTROL+"V"]
ID_Cutclip   [CONTROL+"X"]
ID_Redo      [CONTROL+"Y"]
ID_U         [CONTROL+"Z"]
ID_Modify    [CONTROL+"1"]
ID_Content   [CONTROL+"2"]
ID_dbConnect [CONTROL+"6"]

 

//My OSnap Override Function Keys
["F2"]_Midpoint;
["F3"]_Endpoint;
["F4"]_Insertion;
["F5"]_Intersection;
["F6"]_Perpendicular;
["F7"]_Nearest;
["F9"]_Center;
["F10"]_Node;
["F11"]^C^C-LAYER ON *;;
["F12"]^C^C-LAYER OFF *;N;;

 

//Control Modifier Function Keys

[CONTROL+"F1"]'OFF;
[CONTROL+"F2"]'ON;
[CONTROL+"F3"]_M2P;
[CONTROL+"F5"]_Tangent;
[CONTROL+"F7"]'ZOOM;W;
[CONTROL+"F8"]'ZOOM;P;
[CONTROL+"F9"]_GCen;
[CONTROL+"F10"]
[CONTROL+"F11"]
[CONTROL+"F12"]

 

//Some Extra Personal Tools
[CONTROL+"B"]^C^C_copybase
[CONTROL+"H"]^C^C_pasteblock

[CONTROL+"HOME"]^C^C(_co);
[CONTROL+"END"]^C^C(_cf);

[CONTROL+"PAGEUP"]^C^C(C:S50);
[CONTROL+"PAGEDOWN"]^C^C(C:S100);

[CONTROL+"INSERT"]^C^C(C:RESET);
[CONTROL+"DELETE"]^C^C(C:BPLT);
 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...