Skip to content

crrs (rename symbol) does not replace all instances of the symbol #25

Open
@daveyarwood

Description

@daveyarwood

I have a test file with a bunch of test cases like:

(testing "frequency -> the nearest MIDI note"
  (is (= (pitch/hz->midi 7.95) 0))
  (is (= (pitch/hz->midi 8.176) 0))
  (is (= (pitch/hz->midi 25.96) 20))
  (is (= (pitch/hz->midi 26) 20))
  (is (= (pitch/hz->midi 107.3) 45))
  (is (= (pitch/hz->midi 261) 60))
  (is (= (pitch/hz->midi 430) 69))
  (is (= (pitch/hz->midi 439) 69))
  (is (= (pitch/hz->midi 440) 69))
  (is (= (pitch/hz->midi 441) 69))
  (is (= (pitch/hz->midi 8372) 120)))

If I go into the example.pitch namespace (aliased in the test file above as pitch), move my cursor over the pitch/hz->midi function name in the defn form, and use crrs to rename it to foop, it renames the function in the example.pitch namespace, but only replaces the first instance of pitch/hz->midi in the test file with foop:

(testing "frequency -> the nearest MIDI note"
  (is (= (foop 7.95) 0))
  (is (= (pitch/hz->midi 8.176) 0))
  (is (= (pitch/hz->midi 25.96) 20))
  (is (= (pitch/hz->midi 26) 20))
  (is (= (pitch/hz->midi 107.3) 45))
  (is (= (pitch/hz->midi 261) 60))
  (is (= (pitch/hz->midi 430) 69))
  (is (= (pitch/hz->midi 439) 69))
  (is (= (pitch/hz->midi 440) 69))
  (is (= (pitch/hz->midi 441) 69))
  (is (= (pitch/hz->midi 8372) 120)))

Also note that it should have replaced it with pitch/foop.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions