Put in a cpp file: ---------------------------------------------------------------------------- --------------- extern "C" void* NuVmodelPopulator( vpiHandle _parameterHndl, void* _cktVoid, int* _err ) { CKTcircuit* _ckt = (CKTcircuit*)_cktVoid; std::string _nmPrm ( vpi_get_str( ft_sim->NuVbridge, vpiName, _parameterHndl ) ); vpiHandle _paramsetHndl ( vpi_handle( ft_sim->NuVbridge, vpiParamset, _parameterHndl ) ); std::string _nmPrmset ( vpi_get_str( ft_sim->NuVbridge, vpiName, _paramsetHndl ) ); vpi_release_handle( ft_sim->NuVbridge, _paramsetHndl ); std::transform ( _nmPrmset.begin(), _nmPrmset.end(), _nmPrmset.begin(), ::tolower ); std::transform ( _nmPrmset.begin(), _nmPrmset.end(), _nmPrmset.begin(), ::tolower ); } ---------------------------------------------------------------------------- -------------- 1,2,3 => selects region for query-replace. 5,6,7,8 => sequence causes region to be lost. 1. C-a (move-beginning-of-line) on the next to the last line: --> ( _nmPrmset.begin(), _nmPrmset.end(), _nmPrmset.begin(), ::tolower ); } 2. C-SPC (set-mark-command) 3. C-e (move-end-of-line) 4. M-% (query-replace) The replace region is the next to the last line: ( _nmPrmset.begin(), _nmPrmset.end(), _nmPrmset.begin(), ::tolower ); 5. Double-click left mouse on the "_" of "_nmPrm" on the next to the last line at column 5 to select "_nmPrm". 6. Middle mouse click then enter to insert in query replace: Query replace in region: _nmPrmset 7. Double-click left mouse on the "_" of "_nmPrm" on line 6 to select "_nmPrm" 8. Middle mouse click then enter: Query replace in region _nmPrmset with: _nmPrm Note the edit region of 1,2,3 is lost. --------------------------------------------------------------------- In GNU Emacs 28.0.50 (build 1, x86_64-w64-mingw32) of 2021-01-15 built on CIRROCUMULUS Repository revision: f45be48ddbde00610e1e08fca6590dcf24a4e1b5 Repository branch: master Windowing system distributor 'Microsoft Corp.', version 10.0.19042 System Description: Microsoft Windows 10 Enterprise (v10.0.2009.19042.928) Configured using: 'configure --without-dbus --without-compress-install -C 'CFLAGS=-O2 -static -g3' PKG_CONFIG_PATH=/mingw64/lib/pkgconfig' Configured features: ACL GIF GMP GNUTLS HARFBUZZ JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY W32NOTIFY PDUMPER PNG RSVG SOUND THREADS TIFF TOOLKIT_SCROLL_BARS XPM ZLIB Important settings: value of $LANG: ENU locale-coding-system: cp1252 Major mode: C++//la Minor modes in effect: shell-dirtrack-mode: t show-paren-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t abbrev-mode: t Load-path shadows: None found. Features: (pp shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs rfc822 mml mml-sec epa epg epg-config gnus-util rmail rmail-loaddefs text-property-search mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils misearch multi-isearch two-column help-mode time-date web-mode advice derived edmacro kmacro shell pcomplete comint ansi-color ring printing ps-print ps-print-loaddefs ps-def lpr paren cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs finder-inf tex-site info package easymenu browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib iso-transl tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp disp-table term/w32-win w32-win w32-vars term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads w32notify w32 lcms2 multi-tty make-network-process emacs) Memory information: ((conses 16 190653 13405) (symbols 48 14109 5) (strings 32 48550 3158) (string-bytes 1 1555849) (vectors 16 22314) (vector-slots 8 381834 16818) (floats 8 268 260) (intervals 56 3394 0) (buffers 984 18))